Development of software components for heterogeneous many-core architectures

1.1 Software development for heterogeneous architectures . . . . . . . . . . . . . . . . . . . 4 1.1.1 Test environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.2 Heterogenous library design for PDE solvers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.2.1 Component and concept design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.2.2 A matrix-free finite di↵erence component . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3 Model problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3.1 Heat conduction equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3.1.1 Assembling the heat conduction solver . . . . . . . . . . . . . . . . . . 14 1.3.1.2 Numerical solutions to the heat conduction problem . . . 16 1.3.2 Poisson equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.3.2.1 Assembling the Poisson Solver . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.3.2.2 Numerical solutions to the Poisson problem . . . . . . . . . . . . 21 1.4 Optimization strategies for multi-GPU systems . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.4.1 Spatial domain decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.4.2 Parareal – Parallel time integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.4.2.1 The Parareal algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1.4.2.2 Computational complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 1.5 Conclusion and outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

[1]  Yvon Maday,et al.  The parareal in time algorithm , 2008 .

[2]  William Gropp,et al.  Domain Decomposition: Parallel Multilevel Algorithms for Elliptic Partial Di erential Equations , 1995 .

[3]  Torsten Hoefler,et al.  Writing Parallel Libraries with MPI - Common Practice, Issues, and Extensions , 2011, EuroMPI.

[4]  Richard Barrett,et al.  Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods , 1994, Other Titles in Applied Mathematics.

[5]  Nathan Bell,et al.  Thrust: A Productivity-Oriented Library for CUDA , 2012 .

[6]  Douglas Gregor,et al.  C++ Templates: The Complete Guide , 2002 .

[7]  Eric Aubanel Scheduling of tasks in the parareal algorithm , 2011, Parallel Comput..

[8]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[9]  Anthony Skjellum,et al.  Writing libraries in MPI , 1993, Proceedings of Scalable Parallel Libraries Conference.

[10]  Randall J. LeVeque,et al.  Finite difference methods for ordinary and partial differential equations - steady-state and time-dependent problems , 2007 .

[11]  Allan S. Nielsen Feasibility study of the parareal algorithm , 2012 .

[12]  Martin J. Gander,et al.  Analysis of the Parareal Time-Parallel Time-Integration Method , 2007, SIAM J. Sci. Comput..

[13]  C. Kelley Iterative Methods for Linear and Nonlinear Equations , 1987 .

[14]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[15]  David E. Keyes,et al.  Exaflop/s: The why and the how , 2011 .

[16]  Michael Garland,et al.  Implementing sparse matrix-vector multiplication on throughput-oriented processors , 2009, Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis.

[17]  J. Marsden,et al.  A mathematical introduction to fluid mechanics , 1979 .

[18]  Samuel Williams,et al.  The Landscape of Parallel Computing Research: A View from Berkeley , 2006 .

[19]  John D. McGregor,et al.  Technical criteria for the specification and evaluation of object-oriented libraries , 1992, Softw. Eng. J..

[20]  Y Maday,et al.  Parallel-in-time molecular-dynamics simulations. , 2002, Physical review. E, Statistical, nonlinear, and soft matter physics.

[21]  Joel H. Ferziger,et al.  Computational methods for fluid dynamics , 1996 .

[22]  J. Lions,et al.  Résolution d'EDP par un schéma en temps « pararéel » , 2001 .

[23]  Barry F. Smith,et al.  Domain Decomposition: Parallel Multilevel Methods for Elliptic Partial Differential Equations , 1996 .