The QRML Language

[kar–uh–muh l] a kind of chewy candy, commonly in small blocks, made from sugar, butter, milk, etc.

dictionary.com

Video About QRML

Video about QRML

Introduction

Quality and Resource Management are common activities in many embedded and cyber-physical systems. We have developed QRM models to support and automate QRM activities, off-line and on-line.

The Quality and Resource Management Language (QRML, [1]) is developed as a means to create QRM models. It is a DSL, using Xtext, that supports the QRM Component Interface model of [2].

It was developed in the context of a project, FitOptiVis, about design and management of image processing pipelines within cps [3], but it can be used in very diverse contexts, we believe.

Constraint Generation

A QRML model describes a set of components, their various interface, relations between components and constraints on the different kinds of values. As such, a QRML can be interpreted as a set of constraints on the variables of the components. A constraint solver can help identify of the model, the set of constraints, has any feasible solutions at all, identify optimal solutions for a given objective, or identify Pareto optimal solutions with respect to multiple objectives.

We have implemented a translation from a QRML model to a constraint program in SMT-Lib 2 and connected it to the open source Z3 constraint solver in the qrml.org web site.

Tools

  • Some of the tools are offered via the qrml.org web page.
  • The Xtext DSL tools, are not yet released in open source

Example

budget ImageCapturing boolean ordered by = 

typedef Quality enumeration {low, medium, high} ordered by low < medium, medium < high

budget FaceIdentification {
	latency : Latency
	qual : Quality
}

component LocalComputePlatform {
	provides FaceIdentification faceId { qual = medium & latency = 50 }
	provides DatabaseAccess dbAcc { latency = 50 }
}

Acknowledgements

This work has received funding from the Electronic Component Systems for European Leadership (ECSEL) Joint Undertaking under grant agreements no 783162 (FitOpTiVis) and 101007260 (TRANSACT)

References

  1. Freek Berg and Václav Čamra and Martijn Hendriks and Marc Geilen and Petr Hnetynka and Fernando Manteca and Pablo Sánchez and Tomáš Bureš and Twan Basten (2020): QRML: A Component Language and Toolset for Quality and Resource Management. In: 2020 Forum for Specification and Design Languages (FDL), pp. 1-8, 2020.
  2. Martijn Hendriks and Marc Geilen and Kees Goossens and Rob Jong and Twan Basten (2021): Interface Modeling for Quality and Resource Management. In: Logical Methods in Computer Science, vol. Volume 17, Issue 2, 2021.
  3. C. Sau and C. Rinaldi and L. Pomante and F. Palumbo and G. Valente and T. Fanni and M. Martinez and F. Linden and T. Basten and M. Geilen and G. Peeren and J. Kadlec and P. Jääskeläinen and L. Bulej and F. Barranco and J. Saarinen and T. Säntti and M. K. Zedda and V. Sanchez and S. Tabatabaei Nikkhah and D. Goswami and G. Amat and L. Maršík and M. Helvoort and L. Medina and Z. Al-Ars and A. Beer (2021): Design and management of image processing pipelines within CPS: Acquired experience towards the end of the FitOptiVis ECSEL Project. In: Microprocessors and Microsystems, vol. 87, pp. 104350, 2021, ISSN: 0141-9331.

Selected Related Publications

2021

Hendriks, Martijn; Geilen, Marc; Goossens, Kees; Jong, Rob; Basten, Twan

Interface Modeling for Quality and Resource Management Journal Article

In: Logical Methods in Computer Science, vol. Volume 17, Issue 2, 2021.

Links | BibTeX

Nikkhah, Shayan Tabatabaei; Geilen, Marc; Goswami, Dip; Koedam, Martijn; Nelson, Andrew; Goossens, Kees

A Deployment Framework for Quality-Sensitive Applications in Resource-Constrained Dynamic Environments Proceedings Article

In: 2021 24th Euromicro Conference on Digital System Design (DSD), pp. 212-220, 2021.

Links | BibTeX

2020

Nikkhah, Shayan Tabatabaei; Geilen, Marc; Goswami, Dip; Goossens, Kees

A Performance Analysis Framework for Real-Time Systems Sharing Multiple Resources Proceedings Article

In: 2020 Design, Automation & Test in Europe Conference & Exhibition (DATE), pp. 326-329, 2020.

Links | BibTeX

Berg, Freek; Čamra, Václav; Hendriks, Martijn; Geilen, Marc; Hnetynka, Petr; Manteca, Fernando; Sánchez, Pablo; Bureš, Tomáš; Basten, Twan

QRML: A Component Language and Toolset for Quality and Resource Management Proceedings Article

In: 2020 Forum for Specification and Design Languages (FDL), pp. 1-8, 2020.

Links | BibTeX

2013

Goossens, Kees; Azevedo, Arnaldo; Chandrasekar, Karthik; Gomony, Manil Dev; Goossens, Sven; Koedam, Martijn; Li, Yonghui; Mirzoyan, Davit; Molnos, Anca; Nejad, Ashkan Beyranvand; Nelson, Andrew; Sinha, Shubhendu

Virtual Execution Platforms for Mixed-time-criticality Systems: The CompSOC Architecture and Design Flow Journal Article

In: SIGBED Rev., vol. 10, no. 3, pp. 23–34, 2013, ISSN: 1551-3688.

Links | BibTeX

2007

Geilen, Marc; Basten, Twan

A Calculator for Pareto Points Proceedings Article

In: 2007 Design, Automation Test in Europe Conference Exhibition, pp. 1-6, 2007.

Links | BibTeX

Geilen, Marc; Basten, Twan; Theelen, Bart; Otten, Ralph

An Algebra of Pareto Points Journal Article

In: Fundam. Inf., vol. 78, no. 1, pp. 35–74, 2007, ISSN: 0169-2968.

Links | BibTeX