State-of-the-art parallel sorting algorithms for distributed-memory architectures are based on computing a balanced partitioning via sampling and histogramming. By finding samples that partition the sorted keys into evenly-sized chunks, these algorithms minimize the number of communication rounds required. Histogramming (computing positions of samples) guides sampling, enabling a decrease in the overall number of samples collected. We derive lower and upper bounds on the number of sampling/histogramming rounds required to compute a balanced partitioning. We improve on prior results to demonstrate that when using $p$ processors, $O(\log^* p)$ rounds with $O(p/\log^* p)$ samples per round suffice. We match that with a lower bound that shows that any algorithm with $O(p)$ samples per round requires at least $\Omega(\log^* p)$ rounds. Additionally, we prove the $\Omega(p \log p)$ samples lower bound for one round, thus proving that existing one round algorithms: sample sort, AMS sort and HSS have optimal sample size complexity. To derive the lower bound, we propose a hard randomized input distribution and apply classical results from the distribution theory of runs.
翻译:面向分布式内存架构的先进并行排序算法基于通过采样和直方图计算平衡划分。通过找出能将排序键均匀分割成等大小块的样本,这些算法最小化了所需的通信轮次。直方图(计算样本的位置)指导采样过程,从而减少采集样本的总数。我们推导了计算平衡划分所需采样/直方图轮次的上下界。相较于先前成果,我们证明当使用$p$个处理器时,每轮$O(p/\log^* p)$个样本的$O(\log^* p)$轮方案即足够。同时,我们通过下界证明任何每轮$O(p)$个样本的算法至少需要$\Omega(\log^* p)$轮。此外,我们证明单轮算法至少需要$\Omega(p \log p)$个样本,从而证明现有单轮算法(样本排序、AMS排序和HSS)具有最优样本复杂度。为推导下界,我们提出了一个困难的随机输入分布,并应用了经典游程分布理论中的结论。