Article | Proceedings of the 11th International Modelica Conference, Versailles, France, September 21-23, 2015 | Exploiting Repeated Structures and Vectorization in Modelica
Göm menyn

Title:
Exploiting Repeated Structures and Vectorization in Modelica
Author:
Martin Flehmig: Center for Information Services and High Performance Computing, TU Dresden, Germany Marcus Walther: Center for Information Services and High Performance Computing, TU Dresden, Germany Wolfgang E. Nagel: Center for Information Services and High Performance Computing, TU Dresden, Germany Ines Gubsch: Chair of Construction Machines and Conveying Technology, TU Dresden, Germany Joseph Schuchart: Center for Information Services and High Performance Computing, TU Dresden, Germany Volker Waurich: Chair of Construction Machines and Conveying Technology, TU Dresden, Germany
DOI:
10.3384/ecp15118265
Download:
Full text (pdf)
Year:
2015
Conference:
Proceedings of the 11th International Modelica Conference, Versailles, France, September 21-23, 2015
Issue:
118
Article no.:
028
Pages:
265-272
No. of pages:
8
Publication type:
Abstract and Fulltext
Published:
2015-09-18
ISBN:
978-91-7685-955-1
Series:
Linköping Electronic Conference Proceedings
ISSN (print):
1650-3686
ISSN (online):
1650-3740
Publisher:
Linköping University Electronic Press, Linköpings universitet


Export in BibTex, RIS or text

Large and highly-detailed Modelica models are frequently modeled by utilizing repeated structures, which is a repetition of various elements that are linked together in an iterative manner. While the Modelica language standard supports the representation of repeated structures, it is still not clear how repeated structures can be handled efficiently during model compilation. Instead of preserving the compact notation from the model, all repeated equations are flattened and all array variables are expanded. This leads to unnecessary long compilation times and higher memory consumption. Another aspect that has been yet inadequately considered and is closely connected to repeated structures is vectorization. The vector units of modern CPUs can be engaged to perform SIMD (Single Instruction, Multiple Data) operations, executing the same instruction on multiple data points in parallel. This reveals a high potential for faster simulations. This paper discusses the advantages of utilizing repeated structures for modeling in order to achieve both faster compilation and simulation times. The potentials of preserving for loops throughout compilation are demonstrated using a basic implementation in the OpenModelica Compiler. The effect on the simulation time by enabling vectorization is demonstrated for an appropriate model.

Keywords: SIMD; Vectorization; OpenModelica; Translation; Repetitions

Proceedings of the 11th International Modelica Conference, Versailles, France, September 21-23, 2015

Author:
Martin Flehmig, Marcus Walther, Wolfgang E. Nagel, Ines Gubsch, Joseph Schuchart, Volker Waurich
Title:
Exploiting Repeated Structures and Vectorization in Modelica
DOI:
http://dx.doi.org/10.3384/ecp15118265
References:

Matthias Arzt, Volker Waurich, and J√∂rg Wensch. Towards Utilizing Repeating Structures for Constant Time Compilation of Large Modelica Models. In Proceedings of the 6th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools, EOOLT ‚Äô14, pages 35‚Äď38, New York, NY, USA, 2014. ACM. ISBN 978-1-4503-2953-8. doi: 10.1145/2666202.2666207. URL http://doi.acm.org/10.1145/2666202.2666207.


Martyn Corden. Requirements for Vectorizable Loops, 2012. URL https://software.intel.com/en-us/articles/requirements-for-vectorizable-loops. Accessed 2015-05-19.


Christoph H√∂ger. Separate Compilation of Causalized Equations -Work in Progress. Proceedings of the 4th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools, EOOLT 2011, Zurich, Switzerland, September 5, 2011, pages 113‚Äď120, 2011.


Intel. Intel Architecture Instruction Set Extensions Programming Reference. Intel, October 2014. URL https://software.intel.com/sites/default/files/managed/0d/53/319433-022.pdf. Accessed 2015-05-19.


Saeed Maleki, Yaoqing Gao, Maria J. Garzaran, Tommy Wong, and David A. Padua. An evaluation of vectorizing compilers. In Parallel Architectures and Compilation Techniques (PACT), 2011 International Conference on, pages 372‚Äď382, Oct 2011. doi: 10.1109/PACT.2011.68. URL polaris.cs.uiuc.edu/~garzaran/doc/pact11.pdf.


OpenMP. OpenMP Application Program Interface. OpenMP Architecture Review Board, Jul 2013. URL http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf.


Constantinos C. Pantelides. The Consistent Initialization of Differential-Algebraic Systems. SIAM Journal on Scientific and Statistical Computing, 9(2):213‚Äď231, 1988. doi: 10.1137/0909014. URL http://dx.doi.org/10.1137/0909014.


Robert E. Tarjan. Depth-First Search and Linear Graph Algorithms. SIAM Journal on Computing., pages 146‚Äď160, 1972. URL langevin.univ-tln.fr/cours/PAA/extra/Tarjan-1972.pdf.


Marcus Walther, Volker Waurich, Christian Schubert, Ines Gubsch, Andreas Hofmann, and Lars Mikelsons. Equation based parallelization of Modelica models. In Proceedings of the 10th International Modelica Conference, 2014.


Dirk Zimmer. Module-Preserving Compilation of Modelica Models. Proceedings of the 7th International Modelica Conference; Como; Italy; 20-22 September 2009, (2):880‚Äď889, 2009.

Proceedings of the 11th International Modelica Conference, Versailles, France, September 21-23, 2015

Author:
Martin Flehmig, Marcus Walther, Wolfgang E. Nagel, Ines Gubsch, Joseph Schuchart, Volker Waurich
Title:
Exploiting Repeated Structures and Vectorization in Modelica
DOI:
http://dx.doi.org/10.3384/ecp15118265
Note: the following are taken directly from CrossRef
Citations:
No citations available at the moment


Responsible for this page: Peter Berkesand
Last updated: 2017-02-21