liu.seSearch for publications in DiVA
Planned maintenance
A system upgrade is planned for 10/12-2024, at 12:00-13:00. During this time DiVA will be unavailable.
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Towards introducing just-in-time compilation in a Modelica compiler
Linköping University, Department of Computer and Information Science, Software and Systems. Linköping University, Faculty of Science & Engineering.ORCID iD: 0000-0002-7400-4325
Linköping University, Department of Computer and Information Science, Software and Systems. Linköping University, Faculty of Science & Engineering.ORCID iD: 0000-0001-7638-0108
Linköping University, Faculty of Science & Engineering. Linköping University, Department of Computer and Information Science, Software and Systems.
2019 (English)In: EOOLT '19: Proceedings of the 9th International Workshop on Equation-based Object-oriented Modeling Languages and Tools / [ed] Association for Computing Machinery, New York, NY, United States: ACM Press, 2019, p. 11-19Conference paper, Published paper (Refereed)
Abstract [en]

We are investigating ways of introducing just-in-time compilation in a standard-compliant Modelica compiler, the Open-Modelica compiler (OMC). The main motivations are enabling extensions to support dynamically varying model structure, faster compilation, and faster recompilation of models after changes. We are investigating two approaches.

The first approach is to adapt the low-level OpenModelica intermediate representation (IR) before code generation to be compatible with LLVM. In that way we can avoid generating intermediate C-code and instead generate LLVM IR in memory for just-in-time compilation (JIT).

The second approach is to translate OMC itself written in MetaModelica to Julia, and thereby gain access to the JIT capabilities of LLVM. Another benefit of the second approach is the access to the Julia ecosystem, including a rich set of libraries for numerical computing.

We have done a preliminary investigation of both approaches, with measurements on a selected sample of algorithms, and discovered that compilation-time of generated Julia code is slower compared to generating LLVM IR directly. We conclude that providing a standard-compliant Modelica compiler which supports a dynamically varying model structure is feasible and possible, and we believe that such a compiler can be provided by using Julia or MetaModelica.

Place, publisher, year, edition, pages
New York, NY, United States: ACM Press, 2019. p. 11-19
Series
International Workshop on Equation-based Object-oriented Modeling Languages and Tools
Keywords [en]
OpenModelica, Modelica, LLVM, Julia, MetaModelica
National Category
Computer and Information Sciences
Identifiers
URN: urn:nbn:se:liu:diva-169770DOI: 10.1145/3365984.3365990ISBN: 9781450377133 (print)OAI: oai:DiVA.org:liu-169770DiVA, id: diva2:1468904
Conference
EOOLT '19: 9th International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools, Berlin, Germany, November 5, 2019
Funder
Swedish Foundation for Strategic Research Available from: 2020-09-18 Created: 2020-09-18 Last updated: 2021-08-18Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full texthttps://doi.org/10.1145/3365984.3365990

Authority records

Tinnerholm, JohnSjölund, MartinPop, Adrian

Search in DiVA

By author/editor
Tinnerholm, JohnSjölund, MartinPop, Adrian
By organisation
Software and SystemsFaculty of Science & Engineering
Computer and Information Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetric score

doi
isbn
urn-nbn
Total: 135 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf