intel/x86-simd-sort

Argsort Adaptation

Closed this issue · 8 comments

Amazing work! I was wondering if it would be possible to adapt the qsort kernels for an argsort. So also returning the indices that would make the original array sorted. (I believe you can do this with std::sort by sorting pair<value, size_t> where size_t is the original index) Would love to help out if it's feasible!

Hi, we are working on adding key-value sort (see PR #2) and I want to add argsort as well. Pull requests are welcome if you want to work on it!

@r-devulap Amazing! I'll wait till that lands and then help out

Thanks @r-devulap Will looking into integration!

@samster25 argsort for 32-bit and 64-bit dtype has been merged. Were you able to integrate it? Just curious to hear your feedback and what sort of workload you are using it in.

Closed, as completed.

Hi @r-devulap, Sorry for the delay. I was planning on taking a look in our next sprint! Our plan is to build a Rust crate that wraps this code base. Our use case is we're building a Distributed DataFrame called daft (built in Rust) and we would love to leverage SIMD for our sorts and partitioning algorithms. Thanks again for the hardwork! :)

@samster25 quick ping to check if you have had time to use any of the simd sort methods in daft?