Roofline Guided Design and Analysis of a Multi-stencil CFD Solver for Multicore Performance

Roofline Guided Design and Analysis of a Multi-stencil CFD Solver for Multicore Performance
复制标题

DOI:
10.1109/ipdps.2018.00085
复制
发表时间:
2018-05
期刊:
2018 IEEE International Parallel and Distributed Processing Symposium (IPDPS)
影响因子:
--
通讯作者:
Bahareh Mostafazadeh;F. Marti;Feng Liu;Aparna Chandramowlishwaran
Bahareh Mostafazadeh;F. Marti;Feng Liu;Aparna Chandramowlishwaran
中科院分区:
其他
文献类型:
--
作者:
Bahareh Mostafazadeh;F. Marti;Feng Liu;Aparna Chandramowlishwaran

文献摘要

被引文献

相似文献

本文介绍了一个计算流体动力学(CFD)求解器的设计和优化。我们的求解器是一个结构化的网格有限体积代码,模拟可压缩粘性流在跨音速的流体运动。该求解器的主要挑战之一是具有不同计算强度和不同存储器访问模式的多尺度之间的相互作用。在本文中,我们解决了上述挑战,设计一个高性能的多模板求解器上的多核系统。我们使用屋顶模型作为选择最适合增加计算强度和实现更高百分比的机器峰值性能的优化的指导方针。我们表明,优化和并行化相结合,我们的求解器实现105倍,159倍,和160倍的速度相比,基线实现英特尔Haswell,AMD阿布扎比,英特尔Broadwell分别。我们还比较了领域特定语言(DSL),特别是Halide。我们的手动调优求解器比Halide生成的代码性能高出24倍。展望未来,我们发现了改进DSL的新机会,以弥合这一差距。
This paper presents the design and optimization of a Computational Fluid Dynamics (CFD) solver. Our solver is a structured mesh finite-volume code that simulates the fluid motion of compressible viscous flow at transonic speeds. One of the main challenges in this solver is the interaction between multi-stencils with different computational intensities and distinct memory access patterns. In this paper, we address the above challenge to design a high-performance multi-stencil solver on multicore systems. We use the roofline model as a guideline for choosing optimizations best suited for increasing the computational intensity and achieving a higher percentage of the machine peak performance. We show that optimizations and parallelizations combined, our solver achieves 105X, 159X, and 160X speedup compared to the baseline implementation on Intel Haswell, AMD Abu Dhabi, and Intel Broadwell respectively. We also compare against Domain Specific Languages (DSL), specifically Halide. Our hand-tuned solver outperforms code generated by Halide by up to 24X. Looking forward, we identify new opportunities to improve DSL's to bridge this gap.