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

x86simdsort::object_qsort for int16_t #189

Open
Serge-sudo opened this issue Mar 19, 2025 · 6 comments
Open

x86simdsort::object_qsort for int16_t #189

Serge-sudo opened this issue Mar 19, 2025 · 6 comments

Comments

@Serge-sudo
Copy link

x86simdsort::object_qsort for object with extractor return type int16_t does not work

@Serge-sudo
Copy link
Author

undefined reference to `void x86simdsort::keyvalue_qsort<short, unsigned int>(short*, unsigned int*, unsigned long, bool, bool)'

@r-devulap
Copy link
Contributor

@Serge-sudo Currently x86simdsort::object_qsort it is only supported when extractor type returns a 32-bit and 64-bit data types. Is it possible to up-cast the int16_t to int32_t?

@Serge-sudo
Copy link
Author

Yep. I just wanted to use int16_t for faster result, as in one simd instruction we can fit two times more int16 than int32

@r-devulap
Copy link
Contributor

Right, unfortunately we don't have a SIMD implementation for keyvalue sort which the objectsort relies on.

@Serge-sudo
Copy link
Author

Is it something hard to implement ?, or just unusable? The function x86simdsort::qsort can work over int16 just fine.

@r-devulap
Copy link
Contributor

Not really, just haven't prioritized it for lack of a use case it can benefit from.

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