面向三角域的非线性 GPU 线程映射
分布式、并行与集群计算
2016-09-07 v1
摘要
在 GPU 计算流水线中,存在一个阶段,其中\textit{并行空间}中的线程块网格被映射到\textit{数据空间}中的问题域上。由于并行空间被限制为盒型几何,该映射方法通常是覆盖 维数据空间的 维包围盒(BB)。落在域内的线程执行计算,而落在域外的线程在运行时被丢弃。在这项工作中,我们研究了将线程高效映射到三角域问题上的情况,并提出了一种基于下三角矩阵性质的块空间线性映射 ,它将不必要线程的数量从 减少到 。全局内存访问的性能结果表明,与\textit{包围盒}方法相比,性能提升了高达 ,使 位居第二,仅次于\textit{矩形盒}方法,而优于\textit{递归划分}和\textit{上三角}方法。对于共享内存场景, 是最快的方法,在保持线程局部性的同时实现了 的性能提升。这项工作获得的结果使 成为一种有趣的映射,适用于在定义了三角域(无论有无邻域交互)的并行问题上进行高效的 GPU 计算。本文还分析了向四面体域的扩展,并应用于三体相互作用的多体应用。
引用
@article{arxiv.1609.01490,
title = {A Non-linear GPU Thread Map for Triangular Domains},
author = {Cristóbal A. Navarro and Benjamín Bustos and Nancy Hitschfeld},
journal= {arXiv preprint arXiv:1609.01490},
year = {2016}
}
备注
16 pages, 7 Figures