LightScan:CUDA兼容多核处理器上更快的扫描原语
分布式、并行与集群计算
2016-04-19 v1
摘要
扫描(scan,或称前缀和 prefix sum)是并行计算中最基础且广泛使用的原语。本文提出LightScan,一种面向支持CUDA的GPU的更快并行扫描原语,其探究了结合块内计算与块间通信的混合模型来执行扫描。我们的算法利用warp shuffle函数实现快速块内计算,并借助全局一致的L2缓存及相关的并行线程执行(PTX)汇编指令实现轻量级块间通信。使用单块Tesla K40c GPU的性能评估表明,LightScan优于现有的GPU算法与实现,相较于运行在同一GPU上的领先CUDPP、Thrust、ModernGPU和CUB实现,分别实现了高达2.1、2.4、1.5和1.2倍的加速。此外,LightScan比运行于16个CPU核的Intel TBB和Intel Xeon Phi 5110P协处理器分别快达8.9和257.3倍。LightScan源代码可从 http://cupbb.sourceforge.net 获取。
引用
@article{arxiv.1604.04815,
title = {LightScan: Faster Scan Primitive on CUDA Compatible Manycore Processors},
author = {Yongchao Liu and Srinivas Aluru},
journal= {arXiv preprint arXiv:1604.04815},
year = {2016}
}
备注
21 pages, 6 figures, submitted to Journal of Parallel and Distributed Computing on Jan 09, 2016