Need Argsort For 32Bit Index For 32Bit Types
victor-zou opened this issue · 2 comments
We only have argsort whose indexes are (unsigned) int64_t. For 32bit types like int/float, I think argsort with int32_t as index type can also be provided, which may performs better with avx512's i32gather_ps/epi32 instructions. Also, this function can be easily implemented in AVX2 plantforms.
That is true @victor-zou. It will need implementing key-value network sort for 32bit data in ZMM registers. I do have this in my to do list, not sure when I can get to this though.
@r-devulap Thanks. Yes, add i32gather api and 32bit sort(reg, index_reg)
is easy. Only impl the sort network for n from 32 to 128 requires some work. Since this work is on the to-do list, I just ad hoc use a patched sort to 16 than use network
version, and wait for your good news. Thanks again.