谷歌浏览器插件
订阅小程序
在清言上使用

Accelerating real-world stencil computations using temporal blocking: handling sparse sources and receivers

user-618b9067e554220b8f259598(2019)

引用 0|浏览0
暂无评分
摘要
This paper concerns performance optimisation in finite-difference solvers found in seismic imaging. Tiling for locality across multiple time iterations is known to be profitable. We tackle a complicating factor that is arising in seismic inversion problems (as well as other similar contexts): the addition of waves injected from sources distributed sparsely over the 2D/3D domain, and the need for receivers that interpolate data measurements at a set of points, again distributed sparsely across the domain.The presence of code to handle sources and receivers prevents straightforward application of temporal blocking. In this work we show how to overcome this limitation. In the current work, we introduce an algorithm for a loop nest transformation policy applied to wave propagationmodelling with the finite difference method in order to improve data locality and optimize our cache memory use. Our algorithm uses an inspector/executor scheme capable of inspectingmeasurement operations at sparse locations and then compute the field updates. Our contribution is optimizing data locality through tiling and in particular using temporal blocking also known as time-tiling. A lot of work has been done for tiling loop nests with affine transformations, however our work is trying to apply temporal blocking on loop structures that have a non-affine nature and consist part of a large code production framework. We present the methodology and the algorithm followed by the improvements achieved in execution time and the results for FD kernels over a wide range of parameters. The ultimate goal of the work presented in this work is to automate this scheme for stencil codes generated by Devito.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要