The SIPSim implicit parallelism model and the SkelGIS library. (29th April 2015) - Coullon, Hélène; Limet, Sébastien
Summary: Scientific simulations give rise to complex codes where data size and computation time become very important issues, and sometimes a scientific barrier. Thus, parallelization of scientific simulations becomes a significant work. Many time and human efforts are deployed to produce efficient parallel programs. But still, many simulations could not be parallelized because of lack of time to learn parallel programming or lack of human resources. Therefore, aiding parallelization through abstracted parallelism or implicit parallelism has become a main topic in computer science. Many implicit parallelism solutions have been proposed such as algorithmic skeletons libraries, domain‐specific languages or specific libraries. In this paper is introduced a new type of solution to give a totally transparent access to parallel programming for non‐computer scientists of the domain of numerical simulations. This solution is an implicit parallelism model, called Structured Implicit Parallelism on scientific Simulations (SIPSim). After a description of the SIPSim model, this paper presents the implementation of the model, as a C++ templated library called SkelGIS, for two different cases of simulations: simulations on Cartesian meshes and simulations of two physical phenomena linked through a network. For each case, the implementation of the SIPSim components are described, and a simple simulation example is given. SkelGIS is then evaluated on two real cases, one for each case, first on the resolution of shallow water equations and second on an arterial blood flow simulation. To clearly state on SkelGIS performance and its ease of programming, different experiments on both cases are evaluated. Copyright © 2015 John Wiley & Sons, Ltd.