Blood Flow Arterial Network Simulation with the Implicit Parallelism Library SkelGIS

Implicit parallelism computing is an active research domain of computer science. Most implicit parallelism solutions, to solve partial differential equations and scientific simulations, are based on the specificity of resolution methods where the user has to call specific functions which embed parallelism. This paper presents the parallel implicit library SkelGIS which allows the user to freely write its resolution method in a sequential programming style in C++. This library relies on four concepts that are applied to the specific case of network simulations. SkelGIS is evaluated on the real-case simulation of the blood-flow in an arterial network. Benchmarks have been performed to compare the SkelGIS simulation to an OpenMP code and to show its scalability on a cluster using 1024 cores.

[1]  Brendan Vastenhouw,et al.  A Two-Dimensional Data Distribution Method for Parallel Sparse Matrix-Vector Multiplication , 2005, SIAM Rev..

[2]  Coullon Helene,et al.  Algorithmic skeleton library for scientific simulations: SkelGIS , 2013, 2013 International Conference on High Performance Computing & Simulation (HPCS).

[3]  Olivier Delestre,et al.  A ‘well‐balanced’ finite volume scheme for blood flow simulation , 2012, ArXiv.

[4]  G. R. Mudalige,et al.  OP2: An active library framework for solving unstructured mesh-based applications on multi-core and many-core architectures , 2012, 2012 Innovative Parallel Computing (InPar).

[5]  Olivier Pironneau,et al.  Introduction to Scientific Computing , 1998 .

[6]  Alexey L. Lastovetsky,et al.  Heterogeneous PBLAS: Optimization of PBLAS for Heterogeneous Computational Clusters , 2008, 2008 International Symposium on Parallel and Distributed Computing.

[7]  Mario Mulansky,et al.  Odeint - Solving ordinary differential equations in C++ , 2011, ArXiv.

[8]  Niklaus Wirth,et al.  Algorithms + Data Structures = Programs , 1976 .

[9]  Maurice H. Halstead,et al.  Elements of software science (Operating and programming systems series) , 1977 .

[10]  Alfio Quarteroni,et al.  Cardiovascular mathematics : modeling and simulation of the circulatory system , 2009 .

[11]  M. Rubinoff,et al.  Numerical solution of differential equations , 1954, AIEE-IRE '54 (Eastern).

[12]  William Gropp,et al.  Efficient Management of Parallelism in Object-Oriented Numerical Software Libraries , 1997, SciTools.

[13]  Eric Darve,et al.  Liszt: A domain specific language for building portable mesh-based PDE solvers , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[14]  F. Bouchut Nonlinear Stability of Finite Volume Methods for Hyperbolic Conservation Laws: and Well-Balanced Schemes for Sources , 2005 .

[15]  Nancy M. Amato,et al.  STAPL: standard template adaptive parallel library , 2010, SYSTOR '10.

[16]  Tamara G. Kolda,et al.  Graph partitioning models for parallel computing , 2000, Parallel Comput..

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

[18]  Coullon Helene,et al.  Parallelization of Shallow-water Equations with the Algorithmic Skeleton Library SkelGIS☆ , 2013, ICCS 2013.

[19]  Pierre-Yves Lagrée,et al.  An inverse technique to deduce the elasticity of a large artery , 2000 .