Combining Abstract Interpretation with Model Checking for Timing Analysis of Multicore Software
- 1 November 2010
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 339-349
- https://doi.org/10.1109/rtss.2010.30
Abstract
It is predicted that multicores will be increasingly used in future embedded real-time systems for high performance and low energy consumption. The major obstacle is that we may not predict and provide any guarantee on real-time properties of software on such platforms. The shared memory bus is among the most critical resources, which severely degrade the timing predictability of multicore software due to the access contention between cores. In this paper, we study a multicore architecture where each core has a local L1 cache and all cores use a shared bus to access the off-chip memory. We use Abstract Interpretation (AI) to analyze the local cache behavior of a program running on a dedicated core. Based on the cache analysis, we construct a Timed Automaton (TA) to model when the programs access the memory bus. Then we model the shared bus also using timed automata. The TA models for the bus and programs will be explored using the UPPAAL model checker to find the WECTs for the respective programs. Based on the presented techniques, we have developed a tool for multicore timing analysis, which allows automatic generation of the TA models from binary code and WCET estimation for any given TA model of the shared bus. Extensive experiments have been conducted, showing that the combined approach can significantly tighten the estimations. As examples, we have studied the TDMA and FCFS buses, of which the WCET bounds can be tightened by up to 240% and 82% respectively, compared with the worst-case bounds estimated based on worst-case bus access delay.Keywords
This publication has 18 references indexed in Scilit:
- Timing Analysis of Concurrent Programs Running on Shared Cache Multi-CoresPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- Cache-aware scheduling and analysis for multicoresPublished by Association for Computing Machinery (ACM) ,2009
- Accurately Estimating Worst-Case Execution Time for Multi-core Processors with Shared Direct-Mapped Instruction CachesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- Precise Worst-Case Execution Time Analysis for Processors with Timing AnomaliesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- RooflineCommunications of the ACM, 2009
- Abstract Interpretation of FIFO ReplacementPublished by Springer Nature ,2009
- Performance Comparison of Techniques on Static Path Analysis of WCETPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- WCET Analysis for Multi-Core Processors with Shared L2 Instruction CachesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- Predictable Implementation of Real-Time Applications on Multiprocessor Systems-on-ChipPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2008
- Modeling out-of-order processors for WCET analysisReal-Time Systems, 2006