This repository provides an efficient implementation of parallel sorting algorithms using the OpenMP library. The implementation has been extensively tested on Fugaku, one of the world's most powerful supercomputers, and demonstrated excellent scalability. The repository includes the benchmark code used for the performance evaluation in our paper "Performance Evaluation of Parallel Sortings on the Supercomputer Fugaku."
We have implemented two parallel sorting algorithms: Parallel Sorting by Regular Sampling (PSRS) and Parallel Sorting using Exact Splitting (PSES). PSRS is a variant of samplesort proposed by Hanmao Shi and Jonathan Schaeffer that can efficiently sort most input sequences. However, it may perform poorly when the input sequence contains numerous duplicate elements. PSES, presented by Christian Siebert and Felix Wolf, on the other hand, is a more complex algorithm than PSRS, but it maintains high performance regardless of the number of duplicates. For more information on the performance of these algorithms, please refer to our paper.