A Novel Hybrid Quicksort Algorithm Vectorized using AVX-512 on Intel Skylake

Abstract : The modern CPU’s design, which is composed of hierarchical memory and SIMD/vectorization capability, governs the potential for algorithms to be transformed into efficient implementations. The release of the AVX-512 changed things radically, and motivated us to search for an efficient sorting algorithm that can take advantage of it. In this paper, we describe the best strategy we have found, which is a novel two parts hybrid sort, based on the well-known Quicksort algorithm. The central partitioning operation is performed by a new algorithm, and small partitions/arrays are sorted using a branch-free Bitonicbased sort. This study is also an illustration of how classical algorithms can be adapted and enhanced by the AVX-512 extension. We evaluate the performance of our approach on a modern Intel Xeon Skylake and assess the different layers of our implementation by sorting/partitioning integers, double floatingpoint numbers, and key/value pairs of integers. Our results demonstrate that our approach is faster than two libraries of reference: the GNU C++ sort algorithm by a speedup factor of 4, and the Intel IPP library by a speedup factor of 1.4.
Type de document :
Article dans une revue
International Journal of Advanced Computer Science and Applications (IJACSA), 2017, 〈10.14569/IJACSA.2017.081044〉
Liste complète des métadonnées

Littérature citée [15 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01512970
Contributeur : Bérenger Bramas <>
Soumis le : jeudi 2 novembre 2017 - 11:38:10
Dernière modification le : lundi 20 août 2018 - 13:30:07

Fichier

Paper_44-A_Novel_Hybrid_Quicks...
Publication financée par une institution

Identifiants

Citation

Berenger Bramas. A Novel Hybrid Quicksort Algorithm Vectorized using AVX-512 on Intel Skylake. International Journal of Advanced Computer Science and Applications (IJACSA), 2017, 〈10.14569/IJACSA.2017.081044〉. 〈hal-01512970v2〉

Partager

Métriques

Consultations de la notice

120

Téléchargements de fichiers

75