多核环境下的资源无关排序算法
数据结构与算法
2017-11-03 v2 分布式、并行与集群计算
摘要
我们提出一种确定性排序算法 SPMS(采样、划分与归并排序),它将采样排序的划分阶段与归并阶段交错进行。在串行执行时,该算法能在 时间内对 个元素进行缓存无关排序,且缓存缺失次数达到最优。算法的并行复杂度(或关键路径长度)为 ,改进了此前最优缓存无关排序的界。该算法还具有较低的伪共享代价。当在多核计算环境中由工作窃取调度器调度执行时,该环境具有全局共享内存和 个核心,每个核心拥有大小为 、按大小为 的块组织的缓存,此并行执行带来的额外缓存缺失和伪共享缺失的代价分别被 和 次缓存缺失的代价所界定,其中 是执行期间发生的窃取次数。最后,SPMS 是资源无关的,因为对机器参数的依赖仅出现在其性能分析中,而非算法本身内部。
引用
@article{arxiv.1508.01504,
title = {Resource Oblivious Sorting on Multicores},
author = {Richard Cole and Vijaya Ramachandran},
journal= {arXiv preprint arXiv:1508.01504},
year = {2017}
}
备注
A version very similar to this appears in ACM Transactions on Parallel Computing (TOPC), Vol. 3, No. 4, Article 23, 2017. The current version adds some additional citations to earlier sorting algorithms, and a comparison to Sharesort