OpenCS: a framework for parallelisation of equation-based simulation programs
Description
In this work, the main ideas, the key concepts and the implementation details of the Open Compute Stack (OpenCS) framework are presented. The OpenCS framework is a common platform for modelling of problems described by large-scale systems of differential and algebraic equations, parallel evaluation of model equations on diverse types of computing devices (including heterogeneous setups), parallel simulation on shared and distributed memory systems, and model exchange.
The main components and the methodology of OpenCS are described: (1) model specification data structures for a description of general systems of differential and algebraic equations, (2) a method to describe, store in computer memory and evaluate model equations on general purpose and streaming processors, (3) algorithms for partitioning of general systems of equations in the presence of multiple load balancing constraints and for inter-process data exchange, (4) an Application Programming Interface (API), and (5) a cross-platform generic simulation software. The benefits provided by the framework are discussed in detail. The model specification data structures provide a simple platform-independent binary interface for model exchange and allow the same model representation to be used on different high-performance computing systems and architectures. Model equations are stored as an array of binary data (bytecode instructions) which can be directly evaluated on virtually all computing devices with no additional processing.
The capabilities of the framework are illustrated using two large-scale problems. Simulations are performed sequentially on a single processor and in parallel using the MPI interface. Multi-core CPU, discrete GPU and heterogeneous CPU/GPU setups are used for the evaluation of model equations utilising the OpenMP API and the OpenCL framework for parallelism. The overall performance and performance of four main and four sub-phases of the numerical solution are analysed and compared to the maximum theoretical.
Files
OpenCS - a framework for parallelisation of equation-based simulation programs.pdf
Files
(2.6 MB)
Name | Size | Download all |
---|---|---|
md5:720de5156e84644be66179dc8114fdb8
|
2.6 MB | Preview Download |