Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need Argsort For 32Bit Index For 32Bit Types #97

Open
victor-zou opened this issue Oct 27, 2023 · 2 comments
Open

Need Argsort For 32Bit Index For 32Bit Types #97

victor-zou opened this issue Oct 27, 2023 · 2 comments

Comments

@victor-zou
Copy link

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.

@r-devulap
Copy link
Contributor

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.

@victor-zou
Copy link
Author

@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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants