GPU Support for Automatic Generation of Finite-Differences Stencil Kernels

被引:0
作者
Mickus Rodrigues, Vitor Hugo [1 ]
Cavalcante, Lucas [1 ]
Pereira, Maelso Bruno [1 ]
Luporini, Fabio [2 ]
Reguly, Istvan [3 ]
Gorman, Gerard [2 ]
de Souza, Samuel Xavier [1 ]
机构
[1] Univ Fed Rio Grande do Norte, Natal, RN, Brazil
[2] Imperial Coll London, London, England
[3] Pazmany Peter Catholic Univ, Budapest, Hungary
来源
HIGH PERFORMANCE COMPUTING, CARLA 2019 | 2020年 / 1087卷
关键词
GPU; Domain Specific Languages; Finite-differences; Stencil kernels; Parallel architectures; Devito; OPS; LANGUAGE;
D O I
10.1007/978-3-030-41005-6_16
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The growth of data to be processed in the Oil & Gas industry matches the requirements imposed by evolving algorithms based on stencil computations, such as Full Waveform Inversion and Reverse Time Migration. Graphical processing units (GPUs) are an attractive architectural target for stencil computations because of its high degree of data parallelism. However, the rapid architectural and technological progression makes it difficult for even the most proficient programmers to remain up-to-date with the technological advances at a micro-architectural level. In this work, we present an extension for an open source compiler designed to produce highly optimized finite difference kernels for use in inversion methods named Devito (c). We embed it with the Oxford Parallel Domain Specific Language (OP-DSL) in order to enable automatic code generation for GPU architectures from a highlevel representation. We aim to enable users coding in a symbolic representation level to effortlessly get their implementations leveraged by the processing capacities of GPU architectures. The implemented backend is evaluated on a NVIDIA (R) GTX Titan Z, and on a NVIDIA (R) Tesla V100 in terms of operational intensity through the roof-line model for varying space-order discretization levels of 3D acoustic isotropic wave propagation stencil kernels with and without symbolic optimizations. It achieves approximately 63% of V100's peak performance and 24% of Titan Z's peak performance for stencil kernels over grids with 256(3) points. Our study reveals that improving memory usage should be the most efficient strategy for leveraging the performance of the implemented solution on the evaluated architectures.
引用
收藏
页码:230 / 244
页数:15
相关论文
共 16 条
  • [1] Alnas M.S., 2012, Automated Solution of Differential Equations by the Finite Element Method, P273, DOI DOI 10.1007/978-3-642-23099-8_5
  • [2] PDEL - A LANGUAGE FOR PARTIAL DIFFERENTIAL EQUATIONS
    CARDENAS, AF
    KARPLUS, WJ
    [J]. COMMUNICATIONS OF THE ACM, 1970, 13 (03) : 184 - &
  • [3] Cook Jr G.O., 1988, ALPAL TOOL DEV LARGE
  • [4] Hawick K., 2013, P INT C SOFTW ENG RE, P7
  • [5] Henretty R., 2013, ICS 13, P13
  • [6] Devito (v3.1.0): an embedded domain-specific language for finite differences and geophysical exploration
    Louboutin, Mathias
    Lange, Michael
    Luporini, Fabio
    Kukreja, Navjot
    Witte, Philipp A.
    Herrmann, Felix J.
    Velesko, Paulius
    Gorman, Gerard J.
    [J]. GEOSCIENTIFIC MODEL DEVELOPMENT, 2019, 12 (03) : 1165 - 1187
  • [7] Luporini F., 2018, ARCHITECTURE PERFORM
  • [8] Towards Domain-specific Computing for Stencil Codes in HPC
    Membarth, Richard
    Hannig, Frank
    Teich, Juergen
    Koestler, Harald
    [J]. 2012 SC COMPANION: HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS (SCC), 2012, : 1133 - 1138
  • [9] Mojica O.F., 2019, SEG TECHNICAL PROGRA, DOI [10.1190/segam2019-3216316.1.doi.org/10.1190/segam2019-3216316.1, DOI 10.1190/SEGAM2019-3216316.1]
  • [10] Firedrake: Automating the Finite Element Method by Composing Abstractions
    Rathgeber, Florian
    Ham, David A.
    Mitchell, Lawrence
    Lange, Michael
    Luporini, Fabio
    Mcrae, Andrew T. T.
    Bercea, Gheorghe-Teodor
    Markall, Graham R.
    Kelly, Paul H. J.
    [J]. ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2017, 43 (03):