×

Optimization of a discontinuous Galerkin solver with OpenCL and StarPU. (English) Zbl 1490.65190

Summary: Since the recent advance in microprocessor design, the optimization of computing software becomes more and more technical. One of the difficulties is to transform sequential algorithms into parallel ones. A possible solution is the task-based design. In this approach, it is possible to describe the parallelization possibilities of the algorithm automatically. The task-based design is also a good strategy to optimize software in an incremental way. The objective of this paper is to describe a practical experience of a task-based parallelization of a Discontinuous Galerkin method in the context of electromagnetic simulations. The task-based description is managed by the StarPU runtime. Additional acceleration is obtained by OpenCL.

MSC:

65M60 Finite element, Rayleigh-Ritz and Galerkin methods for initial value and initial-boundary value problems involving PDEs
76M10 Finite element methods applied to problems in fluid mechanics
65Y10 Numerical algorithms for specific classes of architectures

Software:

OpenCL; Gmsh; StarPU
PDFBibTeX XMLCite
Full Text: HAL

References:

[1] Cédric Augonnet, Olivier Aumage, Nathalie Furmento, Raymond Namyst, and Samuel Thibault. StarPU-MPI: Task programming over clusters of machines enhanced with accelerators. In European MPI Users’ Group Meeting, pages 298-299. Springer, 2012.
[2] Cédric Augonnet, Samuel Thibault, Raymond Namyst, and Pierre-André Wacrenier. StarPU: a unified platform for task scheduling on heterogeneous multicore architec-tures. Concurrency and Computation: Practice and Experience, 23(2):187-198, 2011.
[3] Bérenger Bramas. Impact study of data locality on task-based applications through the Heteroprio scheduler. PeerJ Computer Science, 5:e190, May 2019.
[4] Anaïs Crestetto and Philippe Helluy. Resolution of the Vlasov-Maxwell system by PIC Discontinuous Galerkin method on GPU with OpenCL. In ESAIM: Proceedings, volume 38, pages 257-274. EDP Sciences, 2012. · Zbl 1337.78005
[5] Mohamed Essadki, Jonathan Jung, Adam Larat, Milan Pelletier, and Vincent Perrier. A task-driven implementation of a simple numerical solver for hyperbolic conservation laws. ESAIM: Proceedings and Surveys, 63:228-247, 2018. · Zbl 1408.65061
[6] Christophe Geuzaine and Jean-François Remacle. Gmsh: A 3-D finite element mesh generator with built-in pre-and post-processing facilities. International journal for numerical methods in engineering, 79(11):1309-1331, 2009. · Zbl 1176.74181
[7] Jean-Luc Guermond, Richard Pasquetti, and Bojan Popov. Entropy viscosity method for nonlinear conservation laws. Journal of Computational Physics, 230(11):4248-4267, 2011. · Zbl 1220.65134
[8] Philippe Helluy and Jonathan Jung. OpenCL numerical simulations of two-fluid com-pressible flows with a 2D random choice method. International Journal on Finite Volumes, 10:1-38, July 2013. · Zbl 1482.76091
[9] Philippe Helluy and Thomas Strub. Multi-GPU numerical simulation of electromag-netic waves. ESAIM: Proceedings and Surveys, 45:199-208, 2014. International Journal on Finite Volumes · Zbl 1338.78023
[10] Philippe Helluy, Thomas Strub, Michel Massaro, and Malcolm Roberts. Asynchronous OpenCL/MPI numerical simulations of conservation laws. In Software for Exascale Computing-SPPEXA 2013-2015, pages 547-565. Springer, 2016.
[11] Jan S Hesthaven and Tim Warburton. Nodal discontinuous Galerkin methods: algo-rithms, analysis, and applications. Springer Science & Business Media, 2007. · Zbl 1134.65068
[12] JS Hesthaven and T Warburton. Discontinuous galerkin methods for the time-domain maxwell’s equations. ACES Newsletter, 19(ARTICLE):10-29, 2004.
[13] Florian Hindenlang, Gregor J Gassner, Christoph Altmann, Andrea Beck, Marc Stau-denmaier, and Claus-Dieter Munz. Explicit discontinuous galerkin methods for un-steady problems. Computers & Fluids, 61:86-93, 2012. · Zbl 1365.76117
[14] Andreas Klöckner, Timothy Warburton, and Jan S Hesthaven. High-order Discontin-uous Galerkin methods by GPU metaprogramming. In GPU Solutions to Multi-scale Problems in Science and Engineering, pages 353-374. Springer, 2013.
[15] David A Kopriva and Gregor Gassner. On the quadrature and weak form choices in collocation type discontinuous galerkin spectral element methods. Journal of Scientific Computing, 44(2):136-155, 2010. · Zbl 1203.65199
[16] Claus-Dieter Munz, Pascal Omnes, Rudolf Schneider, Eric Sonnendrücker, and Ursula Voss. Divergence correction techniques for Maxwell solvers based on a hyperbolic model. Journal of Computational Physics, 161(2):484-511, 2000. · Zbl 0970.78010
[17] Thomas Strub. Resolution of tridimensional instationary Maxwell’s equations on mas-sively multicore architecture. Phd thesis, Université de Strasbourg, March 2015.
[18] Andrew R Winters, Rodrigo C Moura, Gianmarco Mengaldo, Gregor J Gassner, Ste-fanie Walch, Joaquim Peiro, and Spencer J Sherwin. A comparative study on poly-nomial dealiasing and split form discontinuous galerkin schemes for under-resolved turbulence computations. Journal of Computational Physics, 372:1-21, 2018. · Zbl 1415.76461
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.