Google sortiert Arrays 19-mal schneller als std::sort
Vectorized and performance-portable Quicksort

Google hat einen vektorisierten Quicksort veröffentlicht, der auf sechs Befehlssätzen über drei Architekturen portabel ist und std::sort um das 9- bis 19-fache übertrifft. Die Implementierung nutzt SIMD-Instruktionen wie AVX-512, AVX2 und Arm NEON sowie die portable SIMD-Bibliothek Highway. Auf einer Apple M1 werden 499 MB/s für 32-Bit-Zahlen erreicht, auf Skylake mit AVX-512 sogar 1123 MB/s. Der Code ist unter Apache 2.0 auf GitHub verfügbar.
Wir sind gespannt, welche neuen Anwendungen und Fähigkeiten dadurch möglich werden, dass man auf einem einzelnen CPU-Kern mit 1 GB/s sortieren kann.