MKL Sorting routine?

MKL Sorting routine?

Does the MKL, (or any of the other Intel-available libraries), provide an optimized sort for real, and/or double-precision valued vectors?

7 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Intel MKL does not. Perhaps the Intel Integrated Performance Primitives (Intel IPP) has this functionality. I'll ask.

Much appreciated. I rooted around on the intel site and didn't find any but you might have better luck.


I got this from someone on the Intel IPP team...

"...the closest one you can find is ippsNthMaxElement. This function is to find n maximal or minimal elements..."

Useful? You could also try the Intel IPP forum.

Good luck,



Glad to see that you have found the MKL Forum. It has been a long time since we have chatted.

We have not put any sorting software in MKL but there are a number of functions which we might consider to be supporting functions which we are considering for future versions including such operations as matrix copy, matrix transpose, and perhaps other data movement functions. Certainly sorting functions are candidates for future versions of MKL.


Good hearing from you. The MKL capabilities have certainly evolved since our initial usage. Some optimized "basic help" routines that would be helpful for us include:
- Optimized real and double vector sort
- memcpy
- transpose
- VML functions for gamma() and gammaln()

Beau Paisley, Harmonic Software,


Did you try gamma and lgamma functions from Intel compiler math library? Any reasons to not use libm implementations? I'm asking you because,basing onour experience,gamma/lgamma vector implementation (say, SSE-based) wouldn't give performance benefits comparing with scalar libm implementations. That was the reason why we didn't include vector implementations of gamma and lgamma.

Say, for lgamma it is possible to get performance benefits on the branch where Stirling's approximation works good (x>x0>0), where x0 ~=6..7. For x<=x0 our vision is that lgamma wouldn't be (visibly) faster that scalar libm implementation.

Your thoughts, comments are appreciated.

Wrt sort functions, this is what might be done on MKL side, in my view.

Thank you,

Leave a Comment

Please sign in to add a comment. Not a member? Join today