计算机科学与探索 ›› 2019, Vol. 13 ›› Issue (2): 181-194.DOI: 10.3778/j.issn.1673-9418.1712006
郭 鹏1,2+,袁 良1,张云泉1,黄 珊1,2
GUO Peng1,2+, YUAN Liang1, ZHANG Yunquan1, HUANG Shan1,2
摘要: Stencil计算是一种科学和工程应用中常见的循环模式,而分块技术是一种提高数据局部性和并行性的强大转换方法。与以往直接对整个迭代空间进行分块的分块技术不同,提出了一种新的两层密铺分块的并行算法。首先,利用不同分块密铺数据空间;然后,所有分块沿时间维度扩展密铺迭代空间。该算法有以下优点:(1)最大化并发执行;(2)无冗余计算;(3)简洁的循环条件;(4)适应Stencil不同的尺寸、形状、阶数和边界条件。实验结果表明,对于3D27p Stencil,非周期边界的性能比Pluto高12%,周期边界的性能比Pochoir最高提升40%。