New multi-core CPU and GPU architectures promise high computational power at a low cost if suitable computational algorithms can be developed. However, parallel programming for such architectures is usually non-portable, low-level and error-prone. To make the computational power of new multi-core architectures more easily available to Modelica modelers, we have developed the ParModelica algorithmic language ex-tension to the high-level Modelica modeling language, together with a prototype implementation in the OpenModelica framework. This enables the Modelica modeler to express parallel algorithms directly at the Modelica language level. The generated code is porta-ble between several multi-core architectures since it is based on the OpenCL programming model. The im-plementation has been evaluated on a benchmark suite containing models with matrix multiplication, Eigen value computation, and stationary heat conduction. Good speedups were obtained for large problem sizes on both multi-core CPUs and GPUs. To our knowledge, this is the first high-performing portable explicit parallel programming extension to Modelica.
CITATION STYLE
Gebremedhin, M., Hemmati Moghadam, A., Fritzson, P., & Stavåker, K. (2012). A Data-Parallel Algorithmic Modelica Extension for Efficient Execution on Multi-Core Platforms. In Proceedings of the 9th International MODELICA Conference, September 3-5, 2012, Munich, Germany (Vol. 76, pp. 393–404). Linköping University Electronic Press. https://doi.org/10.3384/ecp12076393
Mendeley helps you to discover research relevant for your work.