Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Automatic Synthesis of FSMs for Enforcing Non-functional Requirements on MPSoCs Using Multi-objective Evolutionary Algorithms

Published: 16 October 2023 Publication History

Abstract

Embedded system applications often require guarantees regarding non-functional properties when executed on a given MPSoC platform. Examples of such requirements include real-time, energy, or safety properties on corresponding programs. One option to implement the enforcement of such requirements is by a reactive control loop, where an enforcer decides based on a system response (feedback) how to control the system, e.g., by adapting the number of cores allocated to a program or by scaling the voltage/frequency mode of involved processors.
Typically, a violation of a requirement must either never happen in case of strict enforcement, or only happen temporally (in case of so-called loose enforcement). However, it is a challenge to design enforcers for which it is possible to give formal guarantees with respect to requirements, especially in the presence of typically largely varying environmental input (workload) per execution. Technically, an enforcement strategy can be formally modeled by a finite state machine (FSM) and the uncertain environment determining the workload by a discrete-time Markov chain. It has been shown in previous work that this formalization allows the formal verification of temporal properties (verification goals) regarding the fulfillment of requirements for a given enforcement strategy.
In this article, we consider the so-far-unsolved problem of design space exploration and automatic synthesis of enforcement automata that maximize a number of deterministic and probabilistic verification goals formulated on a given set of non-functional requirements. For the design space exploration (DSE), an approach based on multi-objective evolutionary algorithms is proposed in which enforcement automata are encoded as genes of states and state transition conditions. For each individual, the verification goals are evaluated using probabilistic model checking. At the end, the DSE returns a set of efficient FSMs in terms of probabilities of meeting given requirements. As experimental results, we present three use cases while considering requirements on latency and energy consumption.

References

[1]
Nidhi Anantharajaiah, Tamim Asfour, Michael Bader, Lars Bauer, Jürgen Becker, Simon Bischof, Marcel Brand, Hans-Joachim Bungartz, Christian Eichler, Khalil Esper, Joachim Falk, Nael Fasfous, Felix Freiling, Andreas Fried, Michael Gerndt, Michael Glaß, Jeferson Gonzalez, Frank Hannig, Christian Heidorn, Jörg Henkel, Andreas Herkersdorf, Benedict Herzog, Jophin John, Timo Hönig, Felix Hundhausen, Heba Khdr, Tobias Langer, Oliver Lenke, Fabian Lesniak, Alexander Lindermayr, Alexandra Listl, Sebastian Maier, Nicole Megow, Marcel Mettler, Daniel Müller-Gritschneder, Hassan Nassar, Fabian Paus, Alexander Pöppl, Behnaz Pourmohseni, Jonas Rabenstein, Phillip Raffeck, Martin Rapp, Santiago Narváez Rivas, Mark Sagi, Franziska Schirrmacher, Ulf Schlichtmann, Florian Schmaus, Wolfgang Schröder-Preikschat, Tobias Schwarzer, Mohammed Bakr Sikal, Bertrand Simon, Gregor Snelting, Jan Spieck, Akshay Srivatsa, Walter Stechele, Jürgen Teich, Isaías A. Comprés Ureña, Ingrid Verbauwhede, Dominik Walter, Thomas Wild, Stefan Wildermann, Mario Wille, Michael Witterauf, and Li Zhang. 2022. Invasive Computing. FAU University Press. DOI:
[2]
Christel Baier, Boudewijn R. Haverkort, Holger Hermanns, and Joost-Pieter Katoen. 2000. On the logical characterisation of performability properties. In 27th International Colloquium on Automata, Languages and Programming(Lecture Notes in Computer Science, Vol. 1853). Springer, 780–792.
[3]
Christel Baier, Joost-Pieter Katoen, and Holger Hermanns. 1999. Approximate symbolic model checking of continuous-time Markov chains. In 10th International Conference on Concurrency Theory(Lecture Notes in Computer Science, Vol. 1664). Springer, 146–161. DOI:
[4]
Dwaipayan Biswas, Vibishna Balagopal, Rishad A. Shafik, Bashir M. Al-Hashimi, and Geoff V. Merrett. 2017. Machine learning for run-time energy optimisation in many-core systems. In Design, Automation & Test in Europe Conference & Exhibition, David Atienza and Giorgio Di Natale (Eds.). IEEE, 1588–1592. DOI:
[5]
Roderick Bloem, Bettina Könighofer, Robert Könighofer, and Chao Wang. 2015. Shield synthesis: Runtime enforcement for reactive systems. In Tools and Algorithms for the Construction and Analysis of Systems(Lecture Notes in Computer Science, Vol. 9035). Springer, 533–548.
[6]
François Bonhoure, Yves Dallery, and William J. Stewart. 1994. On the use of periodicity properties for the efficient numerical solution of certain Markov chains. Numer. Linear Algeb. Appl. 1, 3 (1994), 265–286. DOI:
[7]
Michael C. Browne, Edmund M. Clarke, and Orna Grumberg. 1988. Characterizing finite Kripke structures in propositional temporal logic. Theor. Comput. Sci. 59 (1988), 115–131. DOI:
[8]
Radu Calinescu, Lars Grunske, Marta Z. Kwiatkowska, Raffaela Mirandola, and Giordano Tamburrelli. 2011. Dynamic QoS management and optimization in service-based systems. IEEE Trans. Softw. Eng. 37, 3 (2011), 387–409.
[9]
Radu Calinescu and Marta Z. Kwiatkowska. 2009. Using quantitative analysis to implement autonomic IT systems. In 31st International Conference on Software Engineering. IEEE, 100–110.
[10]
Edmund M. Clarke and E. Allen Emerson. 1981. Design and synthesis of synchronization skeletons using branching-time temporal logic. In Logics of Programs, Workshop (Lecture Notes in Computer Science), Dexter Kozen (Ed.), Vol. 131. Springer, 52–71. DOI:
[11]
Anup Das, Akash Kumar, Bharadwaj Veeravalli, Cristiana Bolchini, and Antonio Miele. 2014. Combined DVFS and mapping exploration for lifetime and soft-error susceptibility improvement in MPSoCs. In Design, Automation & Test in Europe Conference & Exhibition, Gerhard P. Fettweis and Wolfgang Nebel (Eds.). European Design and Automation Association, 1–6. DOI:
[12]
Kalyanmoy Deb, Samir Agrawal, Amrit Pratap, and T. Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6, 2 (2002), 182–197. DOI:
[13]
Qingyuan Deng, David Meisner, Abhishek Bhattacharjee, Thomas F. Wenisch, and Ricardo Bianchini. 2012. CoScale: Coordinating CPU and memory system DVFS in server systems. In 45th Annual IEEE/ACM International Symposium on Microarchitecture. IEEE Computer Society, 143–154. DOI:
[14]
Khalil Esper, Jan Spieck, Pierre-Louis Sixdenier, Stefan Wildermann, and Jürgen Teich. 2023. RAVEN: Reinforcement learning for generating verifiable run-time requirement enforcers for MPSoCs. In 4th Workshop on Next Generation Real-Time Embedded Systems (OASIcs), Federico Terraneo and Daniele Cattaneo (Eds.), Vol. 108. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 7:1–7:16. DOI:
[15]
Khalil Esper, Stefan Wildermann, and Jürgen Teich. 2021. Enforcement FSMs: Specification and verification of non-functional properties of program executions on MPSoCs. In 19th ACM-IEEE International Conference on Formal Methods and Models for System Design. ACM, 21–31. DOI:
[16]
Khalil Esper, Stefan Wildermann, and Jürgen Teich. 2022. Multi-requirement enforcement of non-functional properties on MPSoCs using enforcement FSMs—A case study. In 3rd Workshop on Next Generation Real-Time Embedded Systems(OASIcs, Vol. 98). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2:1–2:13. DOI:
[17]
Yliès Falcone, Laurent Mounier, Jean-Claude Fernandez, and Jean-Luc Richier. 2011. Runtime enforcement monitors: Composition, synthesis, and enforcement abilities. Formal Meth. Syst. Des. 38, 3 (2011), 223–262.
[18]
Simos Gerasimou, Radu Calinescu, and Giordano Tamburrelli. 2018. Synthesis of probabilistic models for quality-of-service software engineering. Autom. Softw. Eng. 25, 4 (2018), 785–831. DOI:
[19]
Simos Gerasimou, Giordano Tamburrelli, and Radu Calinescu. 2015. Search-based synthesis of probabilistic models for quality-of-service software engineering. In 30th IEEE/ACM International Conference on Automated Software Engineering. IEEE Computer Society, 319–330. DOI:
[20]
Hans Hansson and Bengt Jonsson. 1994. A logic for reasoning about time and reliability. Form. Asp. Comput. 6, 5 (1994), 512–535.
[21]
Connor Imes, David H. K. Kim, Martina Maggio, and Henry Hoffmann. 2015. POET: A portable approach to minimizing energy under soft real-time constraints. In 21st IEEE Real-Time and Embedded Technology and Applications Symposium. IEEE Computer Society, 75–86.
[22]
Syed Muhammad Zeeshan Iqbal, Yuchen Liang, and Håkan Grahn. 2010. ParMiBench—An open-source benchmark for embedded multiprocessor systems. IEEE Comput. Archit. Lett. 9, 2 (2010), 45–48. DOI:
[23]
Zhihao Jiang, Miroslav Pajic, Salar Moarref, Rajeev Alur, and Rahul Mangharam. 2012. Modeling and verification of a dual chamber implantable pacemaker. In 18th International Conference on Tools and Algorithms for the Construction and Analysis of Systems(Lecture Notes in Computer Science, Vol. 7214). Springer, 188–203. DOI:
[24]
Colin G. Johnson. 2007. Genetic programming with fitness based on model checking. In 10th European Conference on Genetic Programming(Lecture Notes in Computer Science, Vol. 4445). Springer, 114–124. DOI:
[25]
David H. K. Kim, Connor Imes, and Henry Hoffmann. 2015. Racing and pacing to idle: Theoretical and empirical analysis of energy optimization heuristics. In IEEE 3rd International Conference on Cyber-Physical Systems, Networks, and Applications. IEEE Computer Society, 78–85. DOI:
[26]
Marta Z. Kwiatkowska, Gethin Norman, and David Parker. 2007. Stochastic model checking. In 7th International School on Formal Methods for the Design of Computer, Communication, and Software Systems: Formal Methods for Performance Evaluation(Lecture Notes in Computer Science, Vol. 4486). Springer, 220–270. DOI:
[27]
Marta Z. Kwiatkowska, Gethin Norman, and David Parker. 2011. PRISM 4.0: Verification of probabilistic real-time systems. In 23rd International Conference on Computer Aided Verification(Lecture Notes in Computer Science, Vol. 6806). Springer, 585–591.
[28]
Raluca Lefticaru, Florentin Ipate, and Cristina Tudose. 2009. Automated model design using genetic algorithms and model checking. In 4th Balkan Conference in Informatics. IEEE Computer Society, 79–84. DOI:
[29]
Yiyi Liao, Jun Xie, and Andreas Geiger. 2021. KITTI-360: A novel dataset and benchmarks for urban scene understanding in 2D and 3D. CoRR abs/2109.13410 (2021).
[30]
Jay Ligatti, Lujo Bauer, and David Walker. 2009. Run-time enforcement of nonsafety policies. ACM Trans. Inf. Syst. Secur. 12, 3 (2009), 19:1–19:41.
[31]
David G. Lowe. 1999. Object recognition from local scale-invariant features. In 7th IEEE International Conference on Computer Vision. IEEE, 1150–1157.
[32]
Martin Lukasiewycz, Michael Glaß, Felix Reimann, and Jürgen Teich. 2011. Opt4J: A modular framework for meta-heuristic optimization. In 13th Annual Conference on Genetic and Evolutionary Computation. 1723–1730.
[33]
Sumit K. Mandal, Ganapati Bhat, Janardhan Rao Doppa, Partha Pratim Pande, and Ümit Y. Ogras. 2020. An energy-aware online learning framework for resource management in heterogeneous platforms. ACM Trans. Des. Autom. Electron. Syst. 25, 3 (2020), 28:1–28:26.
[34]
Sumit K. Mandal, Ganapati Bhat, Chetan Arvind Patil, Janardhan Rao Doppa, Partha Pratim Pande, and Ümit Y. Ogras. 2019. Dynamic resource management of heterogeneous mobile platforms via imitation learning. IEEE Trans. Very Large Scale Integr. Syst. 27, 12 (2019), 2842–2854. DOI:
[35]
Maxime Mirka, Gilles Sassatelli, and Abdoulaye Gamatié. 2020. Online learning for dynamic control of OpenMP workloads. In 9th International Conference on Modern Circuits and Systems Technologies. IEEE, 1–6. DOI:
[36]
Anway Mukherjee and Thidapat Chantem. 2018. Energy management of applications with varying resource usage on smartphones. IEEE Trans. Comput. Aided Des. Integr. Circ. Syst. 37, 11 (2018), 2416–2427. DOI:
[37]
Thannirmalai Somu Muthukaruppan, Mihai Pricopi, Vanchinathan Venkataramani, Tulika Mitra, and Sanjay Vishin. 2013. Hierarchical power management for asymmetric multi-core in dark silicon era. In 50th Annual Design Automation Conference. ACM, 174:1–174:9. DOI:
[38]
Vinicius Petrucci, Orlando Loques, Daniel Mossé, Rami G. Melhem, Neven Abou Gazala, and Sameh Gobriel. 2015. Energy-efficient thread assignment optimization for heterogeneous multicore systems. ACM Trans. Embed. Comput. Syst. 14, 1 (2015), 15:1–15:26. DOI:
[39]
Srinivas Pinisetty, Partha S. Roop, Steven Smyth, Nathan Allen, Stavros Tripakis, and Reinhard von Hanxleden. 2017. Runtime enforcement of cyber-physical systems. ACM Trans. Embed. Comput. Syst. 16, 5s (2017), 178:1–178:25.
[40]
Sascha Roloff, Frank Hannig, and Jürgen Teich. 2019. Modeling and Simulation of Invasive Applications and Architectures. Springer. DOI:
[41]
Fred B. Schneider. 2000. Enforceable security policies. ACM Trans. Inf. Syst. Secur. 3, 1 (2000), 30–50.
[42]
Jürgen Teich, Michael Glaß, Sascha Roloff, Wolfgang Schröder-Preikschat, Gregor Snelting, Andreas Weichslgartner, and Stefan Wildermann. 2016. Language and compilation of parallel programs for *-predictable MPSoC execution using invasive computing. In 10th IEEE International Symposium on Embedded Multicore/Many-core Systems-on-Chip. IEEE Computer Society, 313–320.
[43]
Jürgen Teich, Jörg Henkel, Andreas Herkersdorf, Doris Schmitt-Landsiedel, Wolfgang Schröder-Preikschat, and Gregor Snelting. 2011. Invasive computing: An overview. In Multiprocessor System-on-Chip: Hardware Design and Tool Integration. Springer, 241–268.
[44]
Jürgen Teich, Pouya Mahmoody, Behnaz Pourmohseni, Sascha Roloff, Wolfgang Schröder-Preikschat, and Stefan Wildermann. 2021. Run-time enforcement of non-functional program properties on MPSoCs. In A Journey of Embedded and Cyber-physical Systems. Springer, 125–149.
[45]
Jürgen Teich, Behnaz Pourmohseni, Oliver Keszöcze, Jan Spieck, and Stefan Wildermann. 2020. Run-time enforcement of non-functional application requirements in heterogeneous many-core systems. In 25th Asia and South Pacific Design Automation Conference. IEEE, 629–636.
[46]
Fedor Tsarev and Kirill Egorov. 2011. Finite state machine induction using genetic algorithm based on testing and model checking. In 13th Annual Genetic and Evolutionary Computation Conference. ACM, 759–762. DOI:
[47]
Junlong Zhou, Jin Sun, Xiumin Zhou, Tongquan Wei, Mingsong Chen, Shiyan Hu, and Xiaobo Sharon Hu. 2019. Resource management for improving soft-error and lifetime reliability of real-time MPSoCs. IEEE Trans. Comput. Aid. Des. Integr. Circ. Syst. 38, 12 (2019), 2215–2228. DOI:

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Design Automation of Electronic Systems
ACM Transactions on Design Automation of Electronic Systems  Volume 28, Issue 6
November 2023
404 pages
ISSN:1084-4309
EISSN:1557-7309
DOI:10.1145/3627977
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 16 October 2023
Online AM: 29 August 2023
Accepted: 12 August 2023
Revised: 24 April 2023
Received: 11 October 2022
Published in TODAES Volume 28, Issue 6

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Enforcement FSM
  2. runtime requirement enforcement
  3. verification
  4. finite state machine
  5. markov chain
  6. evolutionary algorithm
  7. design space exploration
  8. genetic algorithm
  9. optimization
  10. probabilistic model cheking
  11. PCTL
  12. steady state
  13. MPSoC

Qualifiers

  • Research-article

Funding Sources

  • Deutsche Forschungsgemeinschaft (DFG, German Research Foundation)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 138
    Total Downloads
  • Downloads (Last 12 months)136
  • Downloads (Last 6 weeks)7
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

Cited By

View all

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media