liu.seSearch for publications in DiVA
Change search
ReferencesLink to record
Permanent link

Direct link
Automatic Parallelization of Object Oriented  Models Across Method and System
Linköping University, Department of Computer and Information Science. (PELAB)
Linköping University, Department of Computer and Information Science. (PELAB)ORCID iD: 0000-0002-3435-4996
2007 (English)Conference paper (Refereed)
Abstract [en]

In this work we report preliminary results of automatically generating parallel code from equation-based models together at two levels: Performing inline expansion of a Runge-Kutta solver combined with fine-grained automatic parallelization of the resulting RHS opens up new possibilities for generating high performance code, which is becoming increasingly relevant when multi-core computers are becoming common-place.We have introduced a new way of scheduling the task graph generated from the simulation problem which utilizes knowledge about locality of the simulation problem. The scheduling is also done in a way that limits communication, to the greatest extent possible, to neighboring processors thus avoiding expensive global synchronization. Preliminary tests on a PC-cluster show speedup that is better than what was achieved in previous work where parallelization was done only at the equation system level.

Place, publisher, year, edition, pages
National Category
Computer Science
URN: urn:nbn:se:liu:diva-12429OAI: diva2:65
Proceedings of 6th Eurosim Congress, Ljubjana, Slovenia
Available from: 2008-09-04 Created: 2008-09-04 Last updated: 2014-10-08
In thesis
1. Automatic Parallelization using Pipelining for Equation-Based Simulation Languages
Open this publication in new window or tab >>Automatic Parallelization using Pipelining for Equation-Based Simulation Languages
2008 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

During the most recent decades modern equation-based object-oriented modeling and simulation languages, such as Modelica, have become available. This has made it easier to build complex and more detailed models for use in simulation. To be able to simulate such large and complex systems it is sometimes not enough to rely on the ability of a compiler to optimize the simulation code and reduce the size of the underlying set of equations to speed up the simulation on a single processor. Instead we must look for ways to utilize the increasing number of processing units available in modern computers. However to gain any increased performance from a parallel computer the simulation program must be expressed in a way that exposes the potential parallelism to the computer. Doing this manually is not a simple task and most modelers are not experts in parallel computing. Therefore it is very appealing to let the compiler parallelize the simulation code automatically. This thesis investigates techniques of using automatic translation of models in typical equation based languages, such as Modelica, into parallel simulation code that enable high utilization of available processors in a parallel computer. The two main ideas investigated here are the following: first, to apply parallelization simultaneously to both the system equations and the numerical solver, and secondly. to use software pipelining to further reduce the time processors are kept waiting for the results of other processors. Prototype implementations of the investigated techniques have been developed as a part of the OpenModelica open source compiler for Modelica. The prototype has been used to evaluate the parallelization techniques by measuring the execution time of test models on a few parallel archtectures and to compare the results to sequential code as well as to the results achieved in earlier work. A measured speedup of 6.1 on eight processors on a shared memory machine has been reached. It still remains to evaluate the methods for a wider range of test models and parallel architectures.

Place, publisher, year, edition, pages
Linköping: Linköping University Electronic Press, 2008. 25 p.
Linköping Studies in Science and Technology. Thesis, ISSN 0280-7971 ; 1381
Equation-Based languages, automatic parallelization, Modelica, simulation, Ekvationsbaserade språk, automatisk parallellisering, Modelica, simulering
National Category
Computer Science
urn:nbn:se:liu:diva-12504 (URN)LIU-TEK-LIC-2008:39 (Local ID)978-91-7393-799-3 (ISBN)LIU-TEK-LIC-2008:39 (Archive number)LIU-TEK-LIC-2008:39 (OAI)
2008-09-26, Alan Turing, Hus E, Campus Valla, Linköpings universitet, Linköping, 10:15 (English)
Available from: 2008-09-09 Created: 2008-09-09 Last updated: 2014-10-08Bibliographically approved

Open Access in DiVA

No full text

Other links

Link to Licentiate Thesis

Search in DiVA

By author/editor
Lundvall, HåkanFritzson, Peter
By organisation
Department of Computer and Information Science
Computer Science

Search outside of DiVA

GoogleGoogle Scholar
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

Total: 96 hits
ReferencesLink to record
Permanent link

Direct link