Project MetaConc: Towards Meta-Level Engineering and Tooling for Complex Concurrent Systems

In the last decade, multicore processors have become widely used for devices such as phones, tablets, and high-end servers. As a result, concurrent programming has become more important and complex software systems started to mix a wide range of concurrency models to solve both functional and non-functional requirements. Concurrency has, however, a pervasive influence on the whole system rather than being nicely confined to subsystems. This makes concurrent programs hard to understand and debug. Software tools for concurrent programs work on the lowest abstraction level, e.g., memory accesses, instead of the high-level concurrency concepts.

To support the development of such complex systems, we develop language implementation support in the form of a meta-level interface, which can capture the interaction amongst concurrency models to deliver the concepts needed to support tools. The research challenge is to identify a common meta-level interface that captures the essential properties of concurrency models, with a minimal performance overhead. A second major challenge is to investigate tool support, in particular, debugging tools that assist developers in finding errors, and improving program comprehension. Classic approaches can affect the way a program behaves. We work on minimizing such interference with program execution to avoid hiding concurrency issues.

Posts and Updates

subscribe via RSS

Partners


Institute for System Software

Stefan Marr (contact)
Hanspeter Mössenböck
Elisa Gonzalez Boix (contact)
Carmen Torres López

MetaConc is a joint project of the Institute for System Software at the Johannes Kepler Universität Linz and the Software Languages Lab at the Vrije Universiteit Brussel. The project is funded by FWF Austria and FWO Flanders.

Funding

Funded by FWF as project I 2491-N31.

Funded by FWO as project G004816N.

Publications

Publication

Towards Advanced Debugging Support for Actor Languages: Studying Concurrency Bugs in Actor-based Programs.
Carmen Torres Lopez, Stefan Marr, Hanspeter Mössenböck, and Elisa Gonzalez Boix.
Presentation at the 6th International Workshop on Programming based on Actors, Agents, and Decentralized Control, PDF.

Publication

Building Efficient and Highly Run-time Adaptable Virtual Machines.
Guido Chari, Diego Garbervetsky, Stefan Marr.
Proceedings of the 12th Symposium on Dynamic Languages, PDF.

Publication

Cross-Language Compiler Benchmarking: Are We Fast Yet?
Stefan Marr, Benoit Daloze, Hanspeter Mössenböck.
Proceedings of the 12th Symposium on Dynamic Languages, PDF, HTML.

Publication

GEMs: Shared-memory Parallel Programming for Node.js.
Daniele Bonetta, Luca Salucci, Stefan Marr, Walter Binder.
Proceedings of the 2016 ACM International Conference on Object Oriented Programming Systems Languages & Applications, PDF.

Publication

Efficient and Thread-Safe Objects for Dynamically-Typed Languages.
Benoit Daloze, Stefan Marr, Daniele Bonetta, Hanspeter Mössenböck.
Stefan Marr, Elisa Gonzalez Boix, Hanspeter Mössenböck.
Proceedings of the 2016 ACM International Conference on Object Oriented Programming Systems Languages & Applications, PDF.

Publication

Towards Meta-Level Engineering and Tooling for Complex Concurrent Systems.
Stefan Marr, Elisa Gonzalez Boix, Hanspeter Mössenböck.
Proceedings of the 9th Arbeitstagung Programmiersprachen (ATPS’ 16), PDF, HTML.