4 ms·
Are these significantly faster than the 256 bit versions? They compare to non-simd, but that’s less interesting. Also, it’s unfortunate that this stuff won’t
by hedora 3y ago
Are these significantly faster than the 256 bit versions? They compare to non-simd, but that’s less interesting.
Also, it’s unfortunate that this stuff won’t run on most developer machines.
- mgaunard 3y agoYou don't need avx512 to implement a bitonic sort. I worked on several implementations with plain avx.
- vardump 3y agoOr SSE2+.
- RaisingSpear 3y agoAVX-512's VPCOMPRESS* instructions are very useful for binary-radix sorting though.
- janwas 3y agoYes, can be about 1.6x speedup: https://github.com/Voultapher/sort-research-rs/blob/main/writeup/intel_avx512/text.md#addendum https://github.com/Voultapher/sort-research-rs/blob/main/wri... (cpp_intel_avx512). Disclosure: I am the main author of vqsort, which is also a vectorized Quicksort but portable.
- jackmott42 3y agoIt can often be more than you would expect from the width increase, as lots of masking tools and instructions allow you to vectorize things more efficiently than could be done before.
- deleted 3y ago[deleted]
- adgjlsfhk1 3y agoThe 512 bit registers are the least important part of AVX-512. The much more important parts are the 32 registers, mask registers (these are great for quicksort), compressed displacement (which shrinks the instruction size for unrolled code), and a bunch of other goodies.