F5: A Robust SIMD-Accelerated MSD Radix Sort
Arif Arman, Dmitri Loguinov
摘要
Sorting is a building block of many data-intensive applications, databases, MapReduce pipelines, and large-scale distributed systems. In this paper, we focus on MSD (mostsignificant digit first) radix sort, in which we identify three main bottlenecks - slow small-bucket sorts at the end of recursion, partitioning algorithms susceptible to read-after-write stalls, and unnecessarily deep recursion chains on non-uniform distributions. We overcome these issues in a framework we call F5, which consists of a) vectorized small sorts that perform well on a wide range of input sizes; b) a partitioning engine that delivers bursts of keys into buckets at significantly increased speed; c) a prefix extractor and sortedness checker that allow jumping over common bits and terminating recursion early; and d) an adaptive radix selector that optimally decides the number of bits for each level of partitioning. Results show that F5 often doubles the speed of prior methods, including recent AVX-512 endeavors from Google [13] and Intel [19], on both uniform/skewed distributions, while also remaining in-place.
问问这篇 Paper
问问你的智能体。
Lune 读过与它相关的顶会 Paper,每个回答都会注明依据哪几篇。
相关 Paper
- Origami: A High-Performance Mergesort FrameworkArif Arman, Dmitri LoguinovVLDB 2022 · 被引用 3 次
- MilliSort and MilliQuery: Large-Scale Data-Intensive Computing in MillisecondsYilong Li, Seo Jin Park, John K. OusterhoutNSDI 2021 · 被引用 17 次
- Efficient String Sort with Multi-Character Encoding and Adaptive SamplingWen Jin, Weining Qian, Aoying ZhouSIGMOD 2021 · 被引用 1 次
- Bonsai: High-Performance Adaptive Merge Tree SortingNikola Samardzic, Weikang Qiao, Vaibhav Aggarwal, Mau-Chung Frank Chang 等ISCA 2020 · 被引用 51 次
- Exoshuffle: An Extensible Shuffle ArchitectureFrank Sifei Luan, Stephanie Wang, Samyukta Yagati, Sean Kim 等SIGCOMM 2023 · 被引用 4 次
