DMCA
Fast and Precise WCET Prediction by Separated Cache and Path Analyses (1999)
Venue: | REAL-TIME SYSTEMS |
Citations: | 121 - 5 self |
Citations
2321 |
Abstract interpretation: a Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints
- Cousot, Cousot
- 1977
(Show Context)
Citation Context ...operties of interest. It computes an approximation to an often undecidable or very hard to compute program property. There is a well developed theory of program analysis, abstract interpretation (see =-=[5, 20]-=-). This theory states criteria for correctness and termination of a program analysis. A program analysis is considered an abstraction of a standard semantics of the programming language. Abstract inte... |
1916 |
Theory of Linear and Integer Programming
- Schrijver
- 1986
(Show Context)
Citation Context ...to enable subsequent analysis steps to evaluate the ILP solution easily. 16 HENRIK THEILING AND CHRISTIAN FERDINAND AND REINHARD WILHELM 7. Interpretation of the Relaxed Problem It is well-known (see =-=[24]-=-) that the problem of solving ILPs is NP -complete. Fortunately, the ILPs our approach creates are similar to network flow problems, which usually can be solved fast. Still, the threat of user provide... |
684 | Principles of Program Analysis
- Nielson, Nielson, et al.
- 1999
(Show Context)
Citation Context ...operties of interest. It computes an approximation to an often undecidable or very hard to compute program property. There is a well developed theory of program analysis, abstract interpretation (see =-=[5, 20]-=-). This theory states criteria for correctness and termination of a program analysis. A program analysis is considered an abstraction of a standard semantics of the programming language. Abstract inte... |
257 | Performance analysis of embedded software using implicit path enumeration.
- Li, Malik, et al.
- 1995
(Show Context)
Citation Context ...ution times t J i b i ; i = 1; : : : ; k this time is f max = k i=1 t J b i : (1) To make this function suitable for an objective function in an ILP, a technique called implicit path enumeration (see =-=[11-=-]) is used. The execution counts will be used to represent the above formula. These execution counts are related to the worst-case execution path in the following way: 8b;J 2 t(b) : n J b = i 2 f1; :... |
131 |
Cache modeling for real-time software: Beyond direct mapped instruction caches.
- Li, Malik, et al.
- 1996
(Show Context)
Citation Context ...lfe, the cache behaviour prediction with integer constraints leads to quite large sets of constraints when the level of associativity is increased, and leads to prohibitively high analysis times (see =-=[13]-=-). Our approach is virtually independent of the level of associativity. Everything between 1 and 8 has been tested without significant changes of analysis times. By using the results of the cache anal... |
123 | Efficient Microarchitecture Modeling and Path Analysis for Real-Time Software”,
- Li, Malik, et al.
- 1995
(Show Context)
Citation Context ...tomatically and then adds user supplied constraints to tighten the WCET bounds. 6.1. Generating Constraints A description of how to generate constraints for program path analysis with ILP is given in =-=[12]-=-. In the following we will show how to use this technique together with our VIVU analysis to distinguish execution contexts, i. e., how the objective function can be generated, how to generate the con... |
117 | Worst case timing analysis of RISC processors: R3000/R3010 case study.
- Hur, Bae, et al.
- 1995
(Show Context)
Citation Context ...microarchitectural properties. Nevertheless, they experience the same problems. In an experiment to predict the cache behaviour of a very small program they report analysis times of several hours. In =-=[14]-=-, Lim et al. describe a general framework for the computation of WCETs of programs in the presence of pipelines and cache memories. Two kinds of pipeline and cache state information are associated wit... |
116 | Cache Behavior Prediction by Abstract Interpretation. In:
- Alt, Ferdinand, et al.
- 1995
(Show Context)
Citation Context ...cription to the semantics of fully associative caches with LRU replacement strategy. More complete descriptions that explicitly describe direct mapped and A-way set associative caches can be found in =-=[2]-=- and in [8]. 4. Cache Semantics In the following, we consider a (fully associative) cache as a set of cache lines L = fl 1 ; : : : ; l n g, and the store as a set of memory blocks S = fs 1 ; : : : ; s... |
87 | Deriving Annotations For Tight Calculation of Execution Time
- Ermedahl, Gustafsson
(Show Context)
Citation Context ...LING AND CHRISTIAN FERDINAND AND REINHARD WILHELM in [15]. However, the analyses in this paper only take into account the multi-issue pipeline and the results are, therefore, incomparable to ours. In =-=[7]-=-, Ermedahl and Gustafsson present a method of computing annotations about loops and paths automatically. This technique uses abstract interpretation. It could be used to replace and check some of the ... |
62 | Applying compiler techniques to cache behavior prediction.
- FERDINAND, MARTIN, et al.
- 1997
(Show Context)
Citation Context ... 2 t(b C ) there is at least one context JsC[b C ] of b j . If j is called recursively, there is also a context JR[b C ]. For each context J of b C we generate one constraint: n J b C = n JC[b C ] bj =-=(9)-=- For recursive calls we need a recursion bound b which must be supplied by the user. In many cases, b could be found by a data flow analysis. If the compiler optimises by inlining functions we meet si... |
55 |
Cache Behavior Prediction for Real-Time Systems.
- Ferdinand
- 1997
(Show Context)
Citation Context ...used to derive WCET bounds of programs. This approach has successfully been applied to predict the cache behaviour of FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 3 programs (see =-=[4, 8, 27-=-]) and can naturally be adapted to predict the pipeline behaviour (see [8, 22, 23]). The approach works as follows: In a first step, the concrete semantics of programs is defined. The concrete semant... |
52 | Combining Abstract Interpretation and ILP for Microarchitecture Modelling and Program Path Analysis.
- Theiling, Ferdinand
- 1998
(Show Context)
Citation Context ...used to derive WCET bounds of programs. This approach has successfully been applied to predict the cache behaviour of FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 3 programs (see =-=[4, 8, 27-=-]) and can naturally be adapted to predict the pipeline behaviour (see [8, 22, 23]). The approach works as follows: In a first step, the concrete semantics of programs is defined. The concrete semant... |
51 | Generation of Efficient Interprocedural Analyzers with PAG
- Alt, Martin
- 1995
(Show Context)
Citation Context ... (see [8]). To get more precise results for the cache behaviour prediction, we have developed the VIVU approach (see [18]) which has been implemented with the mapping mechanism of PAG as described in =-=[3]-=-. Paths through the call graph that only differ in the number of repeated passes through a cycle are not distinguished. It can be compared with a combination of virtual inlining of all non-recursive p... |
49 | Worst-case execution time analysis for modern hardware architectures
- Ottosson, Sjodin
- 1997
(Show Context)
Citation Context ...thermore, there are no automatically generated long-distance constraints in our approach, which can be introduced by cache conflict constraints. Widely based on [13], Greger Ottoson and Mikael Sjodin =-=[21]-=- have tried to develop a framework to estimate WCETs for architectures with pipelines, instruction and data caches. Unlike the approach of Li, Malik, and Wolfe, they are not restricted to linear const... |
47 |
PAG An Efficient Program Analyzer Generator
- Martin
- 1998
(Show Context)
Citation Context ...duce the precision of the analysis but does not affect the correctness (see [8]). The computation of the abstract semantics can be implemented with the help of the program analyser generator PAG (see =-=[16-=-]), which allows to generate a program analyser from a description of the abstract domain and of the transfer functions. 3. Cache Memories A cache can be characterised by three major parameters: capa... |
46 | Facilitating worst-case execution times analysis for optimized code.
- Engblom, Altenbernd, et al.
- 1998
(Show Context)
Citation Context ... a different code position and this would enable them to supply our tool with this information. The disadvantage is that the user has to annotate the source code each time the program is compiled. In =-=[6]-=-, Engblom et al. present a method of making the compiler produce an additional description of the optimisations performed. A description language for optimisation transformations is defined which is u... |
44 |
On predicting data cache behavior for real-time systems. In:
- Ferdinand, Wilhelm
- 1998
(Show Context)
Citation Context ...used to derive WCET bounds of programs. This approach has successfully been applied to predict the cache behaviour of FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 3 programs (see =-=[4, 8, 27-=-]) and can naturally be adapted to predict the pipeline behaviour (see [8, 22, 23]). The approach works as follows: In a first step, the concrete semantics of programs is defined. The concrete semant... |
41 | Predicting Instruction Cache Behavior
- MUELLER, WHALLEY, et al.
- 1993
(Show Context)
Citation Context ...ans that a first execution of a memory reference may result in either a hit or a miss, but all non-first executions will result in hits (This is similar to the `first miss' classification as found in =-=[19]-=-.). An abstract cache statesc at a control flow node k that references a memory block s x is interpreted in the following way: If s x 2sc(l y ) for y 2 f1; :::; ng then s x would not have been replace... |
34 | A worst case timing analysis technique for multiple-issue machines,” in
- Lim, Han, et al.
- 1998
(Show Context)
Citation Context ...n input and output state provides a way for a modularisation for the timing analysis. The method is extended to multi-issue machines 20 HENRIK THEILING AND CHRISTIAN FERDINAND AND REINHARD WILHELM in =-=[15]-=-. However, the analyses in this paper only take into account the multi-issue pipeline and the results are, therefore, incomparable to ours. In [7], Ermedahl and Gustafsson present a method of computin... |
23 | Analysis of Loops.
- Martin, Alt, et al.
- 1998
(Show Context)
Citation Context ...he callstring approach whose applicability to cache behaviour prediction is limited (see [8]). To get more precise results for the cache behaviour prediction, we have developed the VIVU approach (see =-=[18]-=-) which has been implemented with the mapping mechanism of PAG as described in [3]. Paths through the call graph that only differ in the number of repeated passes through a cycle are not distinguished... |
18 | OPTVIEW: A New Approach for Examining Optimized Code.
- Tice, Graham
- 1998
(Show Context)
Citation Context ...e used to replace and check some of the user annotations. The work of Sicks (see [25]) about determining value ranges of registers does similar computations and will be incorporated into our tool. In =-=[29]-=-, Tice and Graham present a method of retrieving better information about compiler optimisations. The source program is passed through the compiler and optimisations that are interesting for the user ... |
17 |
Pipeline behaviour prediction for superscalar processors by abstract interpretation,” in
- Schneider, Ferdinand
- 1999
(Show Context)
Citation Context ...ied to predict the cache behaviour of FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 3 programs (see [4, 8, 27]) and can naturally be adapted to predict the pipeline behaviour (see =-=[8, 22, 23-=-]). The approach works as follows: In a first step, the concrete semantics of programs is defined. The concrete semantics is a simplified (auxiliary) semantics that describes only the interesting asp... |
15 |
Generation of Program Analyzers
- MARTIN
- 1999
(Show Context)
Citation Context ... in the abstract cache if it is in both operand abstract caches states. It gets the maximal age if it has two different ages (see Figure 3A). The solution of the must analysis computed by the PAG(see =-=[17, 28]-=-) generated analysers by fixpoint iteration is interpreted as follows: Letsc be an abstract cache state at a control FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 7 f a g f c, f g ... |
7 |
Adressbestimmung zur Vorhersage des Verhaltens von Daten-Caches
- Sicks
- 1997
(Show Context)
Citation Context ...d of computing annotations about loops and paths automatically. This technique uses abstract interpretation. It could be used to replace and check some of the user annotations. The work of Sicks (see =-=[25]-=-) about determining value ranges of registers does similar computations and will be incorporated into our tool. In [29], Tice and Graham present a method of retrieving better information about compile... |
5 |
Statische Pipeline-Analyse fur Echtzeitsysteme. Diplomarbeit, Universitat des Saarlandes
- Schneider
- 1998
(Show Context)
Citation Context ...ied to predict the cache behaviour of FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 3 programs (see [4, 8, 27]) and can naturally be adapted to predict the pipeline behaviour (see =-=[8, 22, 23-=-]). The approach works as follows: In a first step, the concrete semantics of programs is defined. The concrete semantics is a simplified (auxiliary) semantics that describes only the interesting asp... |
2 |
Real-Time and Embedded Systems'. ACM 50th Anniversary Report on Real-Time Computing Research. http://www-ccs.cs.umass.edu/sdcr/rt.ps
- Stankovic
- 1996
(Show Context)
Citation Context ...al-time constraints have to be subjected to a schedulability analysis. It has to be determined whether all timing constraints can be satisfied. The degree of success for such a timing validation (see =-=[26]-=-) depends on tight WCET estimations. For example, for hardware with caches, the typical worst-case assumption is that all accesses miss the cache. This is an overly pessimistic assumption which leads ... |
1 |
PAG Manual'. Fachbereich 14, Universitat des Saarlandes
- Thesing, Martin, et al.
- 1997
(Show Context)
Citation Context ... in the abstract cache if it is in both operand abstract caches states. It gets the maximal age if it has two different ages (see Figure 3A). The solution of the must analysis computed by the PAG(see =-=[17, 28]-=-) generated analysers by fixpoint iteration is interpreted as follows: Letsc be an abstract cache state at a control FAST & PRECISE WCET PREDICTION BY SEPARATED CACHE & PATH ANALYSES 7 f a g f c, f g ... |