Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels

Kerncraft: A Tool for Analytic Performance Modeling of Loop Kernels
复制标题

Kerncraft:循环内核分析性能建模工具

DOI:
10.1007/978-3-319-56702-0_1
复制
发表时间:
2017
期刊:
ArXiv
影响因子:
--
通讯作者:
G. Wellein
G. Wellein
中科院分区:
--
文献类型:
--
作者:
Julian Hammer;Jan Eitzinger;G. Hager;G. Wellein

文献摘要

被引文献

相似文献

要实现最佳的程序性能,需要对硬件和软件之间的交互有深入的了解。对于没有计算机体系结构深入背景的软件开发人员来说,理解和充分利用现代体系结构几乎是不可能的。分析循环性能建模是了解基于简单机器模型的代码执行的相关瓶颈的有用方法。Roofline模型和Execution-Cache-Memory(ECM)模型是循环嵌套性能建模的成熟方法。与屋顶线模型相比,ECM模型还可以描述多核芯片上的单核性能和饱和行为。我们介绍了屋顶线和ECM模型,以及模板性能建模的层条件(LC)。然后,我们介绍了Kerncrature,这是一个工具,可以通过执行所需的代码、数据传输和LC分析来自动构建循环巢的屋顶线和ECM模型。通过分层条件分析,可以预测环巢的最优空间阻塞因子。与这些模型一起,它能够从头估计循环阻塞优化的潜在好处和有用的块大小。在不能轻松进行LC分析的情况下,Kernraft支持缓存模拟器作为后备选项。使用一个25点的远程模板,我们演示了Kernculat工具的实用性和预测能力。
Achieving optimal program performance requires deep insight into the interaction between hardware and software. For software developers without an in-depth background in computer architecture, understanding and fully utilizing modern architectures is close to impossible. Analytic loop performance modeling is a useful way to understand the relevant bottlenecks of code execution based on simple machine models. The Roofline Model and the Execution-Cache-Memory (ECM) model are proven approaches to performance modeling of loop nests. In comparison to the Roofline model, the ECM model can also describes the single-core performance and saturation behavior on a multicore chip.We give an introduction to the Roofline and ECM models, and to stencil performance modeling using layer conditions (LC). We then present Kerncraft, a tool that can automatically construct Roofline and ECM models for loop nests by performing the required code, data transfer, and LC analysis. The layer condition analysis allows to predict optimal spatial blocking factors for loop nests. Together with the models it enables an ab-initio estimate of the potential benefits of loop blocking optimizations and of useful block sizes. In cases where LC analysis is not easily possible, Kerncraft supports a cache simulator as a fallback option. Using a 25-point long-range stencil we demonstrate the usefulness and predictive power of the Kerncraft tool.