General transformations for GPU execution of tree traversals
General transformations for GPU execution of tree traversals
复制标题
GPU 执行树遍历的一般转换
DOI:
--
复制
发表时间:
2013
期刊:
影响因子:
--
通讯作者:
Milind Kulkarni
中科院分区:
文献类型:
--
作者:
Michael Goldfarb;Youngjoon Jo;Milind Kulkarni
With the advent of programmer-friendly GPU computing environments, there has been much interest in offloading workloads that can exploit the high degree of parallelism available on modern GPUs. Exploiting this parallelism and optimizing for the GPU memory hierarchy is well-understood for regular applications that operate on dense data structures such as arrays and matrices. However, there has been significantly less work in the area of irregular algorithms and even less so when pointer-based dynamic data structures are involved. Recently, irregular algorithms such as Barnes-Hut and kd-tree traversals have been implemented on GPUs, yielding significant performance gains over CPU implementations. However, the implementations often rely on exploiting application-specific semantics to get acceptable performance. We argue that there are general-purpose techniques for implementing irregular algorithms on GPUs that exploit similarities in algorithmic structure rather than application-specific knowledge. We demonstrate these techniques on several tree traversal algorithms, achieving speedups of up to 38× over 32-thread CPU versions.