arXiv Open Access 2025

An Intermediate Program Representation for Optimizing Stream-Based Languages

Jan Baumeister Arthur Correnson Bernd Finkbeiner Frederik Scheerer
Lihat Sumber

Abstrak

Stream-based runtime monitors are safety assurance tools that check at runtime whether the system's behavior satisfies a formal specification. Specifications consist of stream equations, which relate input streams, containing sensor readings and other incoming information, to output streams, representing filtered and aggregated data. This paper presents a framework for the stream-based specification language RTLola. We introduce a new intermediate representation for stream-based languages, the StreamIR, which, like the specification language, operates on streams of unbounded length; while the stream equations are replaced by imperative programs. We developed a set of optimizations based on static analysis of the specification and have implemented an interpreter and a compiler for several target languages. In our evaluation, we measure the performance of several real-world case studies. The results show that using the StreamIR framework reduces the runtime significantly compared to the existing StreamIR interpreter. We evaluate the effect of the optimizations and show that significant performance gains are possible beyond the optimizations of the target language's compiler. While our current implementation is limited to RTLola, the StreamIR is designed to accommodate other stream-based languages, enabling their interpretation and compilation into all available target languages.

Topik & Kata Kunci

Penulis (4)

J

Jan Baumeister

A

Arthur Correnson

B

Bernd Finkbeiner

F

Frederik Scheerer

Format Sitasi

Baumeister, J., Correnson, A., Finkbeiner, B., Scheerer, F. (2025). An Intermediate Program Representation for Optimizing Stream-Based Languages. https://arxiv.org/abs/2504.21458

Akses Cepat

Lihat di Sumber
Informasi Jurnal
Tahun Terbit
2025
Bahasa
en
Sumber Database
arXiv
Akses
Open Access ✓