Academia.eduAcademia.edu

WCET analysis

description43 papers
group10 followers
lightbulbAbout this topic
WCET analysis, or Worst-Case Execution Time analysis, is a method used in real-time systems to determine the maximum time a task or program segment can take to execute under worst-case conditions, ensuring that timing constraints are met for system reliability and performance.
lightbulbAbout this topic
WCET analysis, or Worst-Case Execution Time analysis, is a method used in real-time systems to determine the maximum time a task or program segment can take to execute under worst-case conditions, ensuring that timing constraints are met for system reliability and performance.

Key research themes

1. How can intermediate representations improve WCET flow analysis across diverse code formats?

Flow analysis to derive loop bounds, infeasible paths, and execution frequencies is key in static WCET analysis. However, varying code formats (source, intermediate, binary) complicate unified flow analyses. Research has investigated creating portable intermediate languages and representations to uniformly express code semantics, enabling reusable, precise flow analyses applicable across code formats to improve WCET estimation.

Key finding: ALF introduces a generic, intermediate language designed for WCET flow analyses that can represent source, intermediate, and binary code formats with preservation of flow-relevant information. ALF's Lisp/Erlang-like textual... Read more
Key finding: Extends Sim-nML, an ADL used in OTAWA, to describe processor microarchitecture features alongside instruction sets, enabling automated, constraint-based WCET time computations on basic blocks. By integrating hardware detail... Read more
Key finding: Presents a two-phase WCET approximation framework combining (1) semantic analysis of program structure and loop bounds embedded as annotations, and (2) an instruction duration estimator leveraging this information to estimate... Read more

2. What methods exist to approximate or tighten WCET estimates through program structure and infeasible path exploitation?

Exact WCET calculation is challenged by infeasible paths and complex program structures that cause direct and indirect overestimations. Research has explored static analyses bounding loop iterations and detecting infeasible paths, as well as adding flow constraints or conflicts to WCET analyses. Advances include structural analysis, abstract interpretation for loop bounds, and integration of infeasible path information into the WCET computation via ILP and other constraint methods, reducing pessimism and increasing estimate tightness.

Key finding: Identifies infeasible path conflicts as sets of CFG edges that cannot co-occur in an execution path, extending the FFX flow fact format to express such conflicts in WCET analyses. Proposes integration methods via CFG... Read more
Key finding: Applies structural analysis combined with loop bounding based on induction variable analysis to compute min-max iteration bounds per loop, which are then propagated to basic blocks to refine WCET estimates. This fine-grained... Read more
Key finding: Presents a static analysis approach with abstract interpretation to approximate minimal and maximal iteration counts of loops and identify infeasible paths, embedded within Java AOT compilation. These semantic annotations... Read more

3. How can WCET analysis incorporate hardware resource contention and multi-core effects to obtain tighter, realistic execution time bounds?

With the rise of multi-core embedded platforms, shared hardware resource contention like caches, DRAM bandwidth, and bus arbitration significantly impacts WCET. Research explores modeling such contention via memory bandwidth regulation, budget assignments, and multicore-aware timing analyses. Novel analytical frameworks and run-time controls are proposed to mitigate contention-induced WCET overestimations and preserve real-time guarantees in shared resource environments.

Key finding: Proposes an analytical WCET model for tasks running under budget-based memory bandwidth regulation in multi-core systems, extending prior work by considering explicit, possibly uneven memory budgets per core rather than... Read more
Key finding: Identifies that traditional WCET estimations for multi-threaded loops with critical sections suffer from overestimation due to neglecting the ratio of computation to critical section duration. Proposes a new WCET calculation... Read more
Key finding: Introduces a run-time control mechanism that exploits partial WCET analyses and safety conditions to allow concurrent execution of high-criticality tasks with low-criticality ones on multi-core platforms while respecting... Read more
Key finding: Synthesizes a taxonomy and critical overview of approaches addressing timing interference caused by shared hardware resource contention in multicore processors. Discusses architectural, system-centric, WCET-centric, and... Read more

All papers in WCET analysis

We propose a novel formal method to compute an upper estimation of the WCET that contains the loss of precision and also can be easily parametrized by the hardware architecture. Assuming that there exists an executable timed model of the... more
Although multi/many-core platforms enable the parallel execution of tasks, the sharing of resources may lead to long WCETs that fail to meet the real-time constraints of the system. Then, a safe solution is the execution of the most... more
The analysis of the worst-case execution times is necessary in the design of critical real-time systems. To get sound and precise times, the WCET analysis for these systems must be performed on binary code and based on static analysis.... more
The presence of infeasible paths in a program is a source of imprecision in the Worst-Case Execution Time (WCET) analysis. Detecting, expressing and exploiting such paths can improve the WCET estimation or, at least, improve the... more
The challenge of time-predictability in modern many-core architectures
The recent technological advancements and market trends are causing an interesting phenomenon towards the convergence of High-Performance Computing (HPC) and Embedded Computing (EC) domains. Many recent HPC applications require huge... more
The Kalray MPPA3 Coolidge many-core processor is one of the few off-the-shelf high-performance processors amenable to full-fledged static timing analysis. And yet, even on this processor, providing tight execution time upper bounds may... more
Hard and soft real time systems require, for each process, the worst-case execution time (WCET), which is needed by the scheduler's admission tests and subsequently limits a task's execution time during operation. A worst-case execution... more
We present a technique to approximate the worst-case execution time that combines structural analysis with a loop-bounding algorithm based on local induction variable analysis. Structural analysis is an attractive foundation for several... more
The WCET computation is one of the main challenges in hard real-time systems, since all further analysis is based on this value. The complexity of this problem leads existing analysis methods to compute WCET bounds instead of the exact... more
A compiler is a software structure which achieves the job of compiling and executing High-Level Language codes with the hardware computer architectures present. Previously, applications were often made through assembly language... more
Cache memories have been widely used in order to bridge the gap between high speed processors and relatively slower main memories, and thus to improve the overall performance of systems. However in the context of hard real-time systems,... more
The WCET computation is one of the main challenges in hard real-time systems, since all further analysis is based on this value. The complexity of this problem leads existing analysis methods to compute WCET bounds instead of the exact... more
A compiler is a software structure which achieves the job of compiling and executing High-Level Language codes with the hardware computer architectures present. Previously, applications were often made through assembly language... more
The challenge of time-predictability in modern many-core architectures
The recent technological advancements and market trends are causing an interesting phenomenon towards the convergence of High-Performance Computing (HPC) and Embedded Computing (EC) domains. Many recent HPC applications require huge... more
Following the successful WCET Tool Challenges in 2006 and 2008, the third event in this series was organized in 2011, again with support from the ARTIST DESIGN Network of Excellence. Following the practice established in the previous... more
Loop fusion is a compiler optimization that merges the bodies of multiple loops into a single loop. Doing so in a serial program can reduce the loop overhead of the pro- gram as well as improve data locality and increase oppor- tunities... more
This paper presents two Abstract Interpretation-based static analysers used by Airbus on safety-critical avionics programs: aiT [Thesing et al., 2003], a Worst case Execution Time analyzer developed by AbsInt, and ASTRÉE [Blanchet et al.,... more
Following the successful WCET Tool Challenges in 2006 and 2008, the third event in this series was organized in 2011, again with support from the ARTIST DESIGN Network of Excellence. Following the practice established in the previous... more
A compiler is a software structure which achieves the job of compiling and executing High-Level Language codes with the hardware computer architectures present. Previously, applications were often made through assembly language... more
Model checking with program slicing has been successfully applied to compute Worst Case Execution Time (WCET) of a program running in a given hardware. This method lacks path feasibility analysis and suffers from the following problems:... more
Real-time constraints place a requirement on systems to accomplish their assigned functionality in a certain timeframe. This requirement is critical for hard real-time applications, such as safety device controllers, where the system... more
The Worst-Case Execution Time (WCET) analysis is an important stage in development process and verification of hard real-time systems. In this article the use of XML as a standard for exchanging timing information amongst timing analysis... more
Hard and soft real time systems require, for each process, the worst-case execution time (WCET), which is needed by the scheduler's admission tests and subsequently limits a task's execution time during operation. A worst-case execution... more
CHAPTER 1 1. The deadline is the point in time where the task has to be completed, from the programmer's point of view. 2. The duration of a task represents the amount of foreground time that the processor needs to completely execute it.
by Thomas Gross and 
1 more
We present a technique to approximate the worst-case execution time that combines structural analysis with a loop-bounding algorithm based on local induction variable analysis. Structural analysis is an attractive foundation for several... more
The use of Commercial Off-The-Shelf (COTS) multicores in real-time industry is on the rise due to multicores' potential performance increase and energy reduction. Yet, the unpredictable impact on timing of contention in shared hardware... more
I take real pleasure in seeing the proceedings of the 12th International Workshop on Worst-Case Execution Time Analysis online already on the day of the workshop. This helps WCET'12 achieve its goal of facilitating discussion and... more
It is the mark of an instructed mind to rest satisfied with the degree of precision which the nature of the subject admits and not to seek exactness when only an approximation of the truth is possible.
The control system of many complex mechatronic products requires for each task the Worst Case Execution Time (WCET), which is needed for the scheduler's admission tests and subsequently limits a task's execution time during operation. If... more
The real-time systems community has over the years devoted considerable attention to the impact on execution timing that arises from contention on access to hardware shared resources. The relevance of this problem has been accentuated... more
Failure of a safety-critical application on an embedded processor can lead to severe damage or even loss of life. Here we are concerned with two kinds of failure: stack overflow, which usually leads to run-time errors that are difficult... more
The analysis of the worst-case execution times is necessary in the design of critical real-time systems. To get sound and precise times, the WCET analysis for these systems must be performed on binary code and based on static analysis.... more
Static analysis requires the full knowledge of the overall program structure. The structure of a program can be represented by a Control Flow Graph (CFG) where vertices are basic blocks (BB) and edges represent the control flow between... more
WCET analysis is a key activity in the development of safety critical real-time systems. Whether upper bounds on WCETs are obtained using static analysis or measurements, the confidence on the compliance of a system with its temporal... more
The analysis of the worst-case execution times is necessary in the design of critical real-time systems. To get sound and precise times, the WCET analysis for these systems must be performed on binary code and based on static analysis.... more
The WCET computation is one of the main challenges in hard real-time systems, since all further analysis is based on this value. The complexity of this problem leads existing analysis methods to compute WCET bounds instead of the exact... more
I take real pleasure in seeing the proceedings of the 12th International Workshop on Worst-Case Execution Time Analysis online already on the day of the workshop. This helps WCET'12 achieve its goal of facilitating discussion and... more
Hard real time systems are evolving in order to respond to the increasing demand in complex functionalities while taking advantage of newer hardware. Software development for safety critical systems has to comply with strict requirements... more
Current processors are optimized for average case performance, often leading to a high worst-case execution time (WCET). Many architectural features that increase the average case performance are hard to be modeled for the WCET analysis.... more
In this paper, we propose the use of constraint logic programming as a way of modeling contextsensitive execution-times of program segments. The context-sensitive constraints are collected automatically through static analysis or... more
This paper gives an overview of the Worst-Case Execution Time (WCET) analysis research performed by the
Calculating the WCET of mission-critical satellite applications is a challenging issue. The European Space Agency is currently undertaking the CryoSat mission, consisting of a radar altimetry satellite to be launched in 2005. This paper... more
This document is disseminated under the sponsorship of the U.S. Department of Transportation in the interest of information exchange. The United States Government assumes no liability for the contents or use thereof. The United States... more
Starting with a correct and efficient algorithm, we examine the process of transitioning to software. We outline and illustrate numerous problems that an unaware programmer may encounter. These include incorrect software (producing wrong... more
Herhangi bir gercek zamanli yazilimin en onemli ozelliklerinden birisi, en kotu durum yurutme suresidir (WCET). Gercek zamanli sistemlerin zamanlama davranisini anlamak ve gercek zamanli yazilimin son teslim tarihlerini karsiladigini... more
Worst-case execution time (WCET) analysis of systems with data caches is one of the key challenges in real-time systems. Caches exploit the inherent reuse properties of programs, temporarily storing certain memory contents near the... more
This paper describes ongoing work aimed at the construction of formal cost models and analyses to yield verifiable guarantees of resource usage in the context of real-time embedded systems. Our work is conducted in terms of the... more
Download research papers for free!