Abstract
Due to the dynamic behaviour of acceleration mechanisms such as caches and branch predictors, static Worst-case Execution Time (WCET) analysis methods tend to scale poorly to modern hardware architectures. As a result, a trade-off must be found between the duration and the precision of the analysis, leading to an overestimation of the WCET bounds. In turn, this reduces the schedulability and resource usage of the system. In this article, we present a new data structure to speed up the analysis: the eXecution Decision Diagram (XDD), which is an ad hoc extension of Binary Decision Diagrams tailored for WCET analysis problems. We show how XDDs can be used to represent efficiently execution states in a modern hardware platform. Moreover, we propose a new process to build the Integer Linear Programming system of the Implicit Path Enumeration Technique using XDD. We use benchmark applications to demonstrate how the use of an XDD substantially increases the scalability of WCET analysis and the precision of the obtained WCET.
- [1] . 1997. An introduction to binary decision diagrams. Lecture Notes, IT University of Copenhagen. Retrieved from https://www.cmi.ac.in/madhavan/courses/verification-2011/andersen-bdd.pdf.Google Scholar
- [2] . 2020. Improving the performance of WCET analysis in the presence of variable latencies. InProceedings of the 21st ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (
LCTES’20 ). 119–130.Google Scholar - [3] . 2010. OTAWA: An open toolbox for adaptive WCET analysis. In Proceedings of the 8th IFIP WG 10.2 International Conference on Software Technologies for Embedded and Ubiquitous Systems (SEUS’10). 35–46.Google Scholar
Cross Ref
- [4] . 2011. Computation of WCET using program slicing and real-time model-checking. Retrieved from https://arXiv:1105.1633.Google Scholar
- [5] . 1992. Symbolic model checking: 1020 States and beyond. Info. Comput. 98 (
June 1992), 142–170.Google ScholarDigital Library
- [6] . 2015. Timed automata for modelling caches and pipelines. In Proceedings of the Workshop on Models for Formal Analysis of Real Systems (MARS’15). 37–45.Google Scholar
- [7] . 2002. Processor Pipelines and and Static Worst-Case Execution Time Analysis. Ph.D. Dissertation. University of Uppsala.Google Scholar
- [8] . 1999. Pipeline timing analysis using a trace-driven simulator. In Proceedings of the 6th International Conference on Real-Time Computing Systems and Applications (RTCSA’99).Google Scholar
Cross Ref
- [9] . 2016. TACLeBench: A benchmark collection to support worst-case execution time research. In Proceedings of the 16th International Workshop on Worst-case Execution Time Analysis.Google Scholar
- [10] . 2005. A Fast and Efficient Cache Persistence Analysis.
Technical Report . Saarländische Universitëts-und Landesbibliothek/Naturwissenschaftlich-Technische Fakultët I.Google Scholar - [11] . 1999. Bounding pipeline and instruction cache performance. IEEE Trans. Comput. 48, 1 (
Jan. 1999), 53–70.Google ScholarDigital Library
- [12] . 2000. Worst-case execution time analysis for digital signal processors. In Proceedings of the 10th European Signal Processing Conference. 1–4.Google Scholar
- [13] . 2002. Status of the Bound-T WCET tool. Space Systems Finland Ltd.Google Scholar
- [14] . 2008. Simulator generation using an automaton-based pipeline model for timing analysis. In Proceedings of the International Multiconference on Computer Science and Information Technology. IEEE, 657–664.Google Scholar
- [15] . 2012. The WCET analysis tool CalcWcet167. In Proceedings of the International Symposium on Leveraging Applications of Formal Methods, Verification, and Validation. Springer, 158–172.Google Scholar
Digital Library
- [16] . 2002. Pipeline modeling for timing analysis. In Proceedings of the International Static Analysis Symposium. Springer, 294–309.Google Scholar
Cross Ref
- [17] . 2006. Modeling out-of-order processors for WCET analysis. Real-Time Syst. 34, 3 (2006), 195–227.Google Scholar
Digital Library
- [18] . 1995. Performance analysis of embedded software using implicit path enumeration. In ACM SIGPLAN Notices, Vol. 30.11. 88–98.Google Scholar
- [19] . 1995. Performance analysis of embedded software using implicit path enumeration. In Proceedings of the Workshop on Languages, Compilers, and Tools for Real-Time Systems. 88–98.Google Scholar
- [20] . 1999. Timing anomalies in dynamically scheduled microprocessors. In Proceedings of the 20th IEEE Real-Time Systems Symposium. 12–21.Google Scholar
Cross Ref
- [21] . 1990. Shared binary decision diagram with attributed edges for efficient Boolean function manipulation. In Proceedings of the 27th ACM/IEEE Design Automation Conference. 52–57.Google Scholar
Digital Library
- [22] . 2006. A definition and classification of timing anomalies. In Proceedings of the 6th International Workshop on Worst-case Execution Time Analysis (WCET’06).Google Scholar
- [23] . 2009. A context-parameterized model for static analysis of execution times. Trans. High-Perform. Embed. Architect. Compil. II (2009), 222–241.Google Scholar
- [24] . 2010. ILP-based path analysis on abstract pipeline state graphs. Ph.D. Dissertation. Saarland University.Google Scholar
- [25] . 2004. Safe and precise WCET determination by abstract interpretation of pipeline models. Ph.D. Dissertation. Saarland University.Google Scholar
- [26] . 2008. The worst-case execution-time problem–overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7, 3 (2008), 1–53.Google Scholar
Digital Library
- [27] . 2007. Efficient analysis of pipeline models for WCET computation. In Proceedings of the Workshop on Worst-case Execution Time (WCET’07).Google Scholar
Index Terms
A Framework for Calculating WCET Based on Execution Decision Diagrams
Recommendations
Extended Static Analysis for Estimating WCET in Distributed Real Time Systems
STFSSD '09: Proceedings of the 2009 Software Technologies for Future Dependable Distributed SystemsIn most distributed real-time systems, it is required to estimate the worst-case execution time (WCET) of a program. It is important to consider timing effects of the kernel service time and I/O operations in order to improve the accuracy of WCET. In ...
Calculating WCET estimates from timed traces
Real-time systems engineers face a daunting duty: they must ensure that each task in their system can always meet its deadline. To analyse schedulability they must know the worst-case execution time (WCET) of each task. However, determining exact WCETs ...
WCET squeezing: on-demand feasibility refinement for proven precise WCET-bounds
RTNS '13: Proceedings of the 21st International conference on Real-Time Networks and SystemsThe Worst-Case Execution Time (WCET) computed by a WCET analyzer is usually not tight, leaving a gap between the actual and the computed WCET of a program. In this article we present a novel on-demand WCET feasibility refinement technique, called WCET ...






Comments