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.
- [1] . 2022. Invasive Computing. FAU University Press.
DOI: Google ScholarCross Ref - [2] . 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.Google Scholar - [3] . 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: Google ScholarCross Ref - [4] . 2017. Machine learning for run-time energy optimisation in many-core systems. In Design, Automation & Test in Europe Conference & Exhibition, and (Eds.). IEEE, 1588–1592.
DOI: Google ScholarCross Ref - [5] . 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.Google Scholar - [6] . 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: Google ScholarCross Ref - [7] . 1988. Characterizing finite Kripke structures in propositional temporal logic. Theor. Comput. Sci. 59 (1988), 115–131.
DOI: Google ScholarDigital Library - [8] . 2011. Dynamic QoS management and optimization in service-based systems. IEEE Trans. Softw. Eng. 37, 3 (2011), 387–409.Google ScholarDigital Library
- [9] . 2009. Using quantitative analysis to implement autonomic IT systems. In 31st International Conference on Software Engineering. IEEE, 100–110.Google ScholarDigital Library
- [10] . 1981. Design and synthesis of synchronization skeletons using branching-time temporal logic. In Logics of Programs, Workshop (Lecture Notes in Computer Science), (Ed.), Vol. 131. Springer, 52–71.
DOI: Google ScholarCross Ref - [11] . 2014. Combined DVFS and mapping exploration for lifetime and soft-error susceptibility improvement in MPSoCs. In Design, Automation & Test in Europe Conference & Exhibition, and (Eds.). European Design and Automation Association, 1–6.
DOI: Google ScholarCross Ref - [12] . 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6, 2 (2002), 182–197.
DOI: Google ScholarDigital Library - [13] . 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: Google ScholarDigital Library - [14] . 2023. RAVEN: Reinforcement learning for generating verifiable run-time requirement enforcers for MPSoCs. In 4th Workshop on Next Generation Real-Time Embedded Systems (OASIcs), and (Eds.), Vol. 108. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 7:1–7:16.
DOI: Google ScholarCross Ref - [15] . 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: Google ScholarDigital Library - [16] . 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: Google ScholarCross Ref - [17] . 2011. Runtime enforcement monitors: Composition, synthesis, and enforcement abilities. Formal Meth. Syst. Des. 38, 3 (2011), 223–262.Google ScholarDigital Library
- [18] . 2018. Synthesis of probabilistic models for quality-of-service software engineering. Autom. Softw. Eng. 25, 4 (2018), 785–831.
DOI: Google ScholarCross Ref - [19] . 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: Google ScholarDigital Library - [20] . 1994. A logic for reasoning about time and reliability. Form. Asp. Comput. 6, 5 (1994), 512–535.Google ScholarDigital Library
- [21] . 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.Google ScholarCross Ref
- [22] . 2010. ParMiBench—An open-source benchmark for embedded multiprocessor systems. IEEE Comput. Archit. Lett. 9, 2 (2010), 45–48.
DOI: Google ScholarDigital Library - [23] . 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: Google ScholarDigital Library - [24] . 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: Google ScholarCross Ref - [25] . 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: Google ScholarDigital Library - [26] . 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: Google ScholarCross Ref - [27] . 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.Google ScholarCross Ref - [28] . 2009. Automated model design using genetic algorithms and model checking. In 4th Balkan Conference in Informatics. IEEE Computer Society, 79–84.
DOI: Google ScholarDigital Library - [29] . 2021. KITTI-360: A novel dataset and benchmarks for urban scene understanding in 2D and 3D. CoRR abs/2109.13410 (2021).Google Scholar
- [30] . 2009. Run-time enforcement of nonsafety policies. ACM Trans. Inf. Syst. Secur. 12, 3 (2009), 19:1–19:41.Google ScholarDigital Library
- [31] . 1999. Object recognition from local scale-invariant features. In 7th IEEE International Conference on Computer Vision. IEEE, 1150–1157.Google ScholarCross Ref
- [32] . 2011. Opt4J: A modular framework for meta-heuristic optimization. In 13th Annual Conference on Genetic and Evolutionary Computation. 1723–1730.Google ScholarDigital Library
- [33] . 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.Google ScholarDigital Library
- [34] . 2019. Dynamic resource management of heterogeneous mobile platforms via imitation learning. IEEE Trans. Very Large Scale Integr. Syst. 27, 12 (2019), 2842–2854.
DOI: Google ScholarCross Ref - [35] . 2020. Online learning for dynamic control of OpenMP workloads. In 9th International Conference on Modern Circuits and Systems Technologies. IEEE, 1–6.
DOI: Google ScholarCross Ref - [36] . 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: Google ScholarCross Ref - [37] . 2013. Hierarchical power management for asymmetric multi-core in dark silicon era. In 50th Annual Design Automation Conference. ACM, 174:1–174:9.
DOI: Google ScholarDigital Library - [38] . 2015. Energy-efficient thread assignment optimization for heterogeneous multicore systems. ACM Trans. Embed. Comput. Syst. 14, 1 (2015), 15:1–15:26.
DOI: Google ScholarDigital Library - [39] . 2017. Runtime enforcement of cyber-physical systems. ACM Trans. Embed. Comput. Syst. 16, 5s (2017), 178:1–178:25.Google ScholarDigital Library
- [40] . 2019. Modeling and Simulation of Invasive Applications and Architectures. Springer.
DOI: Google ScholarCross Ref - [41] . 2000. Enforceable security policies. ACM Trans. Inf. Syst. Secur. 3, 1 (2000), 30–50.Google ScholarDigital Library
- [42] . 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.Google Scholar
- [43] . 2011. Invasive computing: An overview. In Multiprocessor System-on-Chip: Hardware Design and Tool Integration. Springer, 241–268.Google ScholarCross Ref
- [44] . 2021. Run-time enforcement of non-functional program properties on MPSoCs. In A Journey of Embedded and Cyber-physical Systems. Springer, 125–149.Google ScholarCross Ref
- [45] . 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.Google ScholarDigital Library
- [46] . 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: Google ScholarDigital Library - [47] . 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: Google ScholarDigital Library
Index Terms
- Automatic Synthesis of FSMs for Enforcing Non-functional Requirements on MPSoCs Using Multi-objective Evolutionary Algorithms
Recommendations
Enforcement FSMs: specification and verification of non-functional properties of program executions on MPSoCs
MEMOCODE '21: Proceedings of the 19th ACM-IEEE International Conference on Formal Methods and Models for System DesignMany embedded system applications impose hard real-time, energy or safety requirements on corresponding programs typically concurrently executed on a given MPSoC target platform. Even when mutually isolating applications in space or time, the ...
Hybrid Genetic Reinforcement Learning for Generating Run-Time Requirement Enforcers
MEMOCODE '23: Proceedings of the 21st ACM-IEEE International Conference on Formal Methods and Models for System DesignWhen designing embedded systems, engineers have to consider non-functional requirements, such as real-time or energy consumption constraints. To enforce or counteract any potential violation of such constraints, feedback-based control techniques can ...
A two-phase approximation for model checking probabilistic unbounded until properties of probabilistic systems
We have developed a new approximate probabilistic model-checking method for untimed properties in probabilistic systems, expressed in a probabilistic temporal logic (PCTL, CSL). This method, in contrast to the existing ones, does not require the untimed ...
Comments