中文

Onesweep:一种更快的GPU最低位有效数字基数排序

分布式、并行与集群计算 2022-06-07 v1 数据结构与算法

摘要

我们提出Onesweep,一种面向驻留于全局内存的大型GPU排序问题的最低位有效数字(LSD)基数排序算法。我们的并行算法采用单遍前缀和方法,每次数字分箱迭代仅需约2n次全局读/写操作。相较于当代GPU基数排序实现,这显著减少了末级内存流量,后者每次数字分箱迭代需两遍遍历数据集,总计约3n次全局内存操作。在NVIDIA A100 GPU上,我们的方法在排序256M随机32位密钥时达到29.4 GKey/s。与当前最先进的GPU LSD基数排序CUB相比,我们的方法提供约1.5倍的加速。对于具有不同分布的32位密钥,与当前最先进的GPU MSD基数排序HRS相比,我们的方法提供更一致的性能,并在几乎所有情况下优于它。

关键词

引用

@article{arxiv.2206.01784,
  title  = {Onesweep: A Faster Least Significant Digit Radix Sort for GPUs},
  author = {Andy Adinets and Duane Merrill},
  journal= {arXiv preprint arXiv:2206.01784},
  year   = {2022}
}

备注

12 pages, 11 figures, 2 tables