Results 1  10
of
60
Timing Analysis for Instruction Caches
 REALTIME SYSTEMS
, 2000
"... This paper contributes a comprehensive study of a framework to bound worstcase instruction cache performance for caches with arbitrary levels of associativity. The framework is formally introduced, operationally described and its correctness is shown. Results of incorporating instruction cache pred ..."
Abstract

Cited by 90 (26 self)
 Add to MetaCart
This paper contributes a comprehensive study of a framework to bound worstcase instruction cache performance for caches with arbitrary levels of associativity. The framework is formally introduced, operationally described and its correctness is shown. Results of incorporating instruction cache predictions within pipeline simulation show that timing predictions for setassociative caches remain just as tight as predictions for directmapped caches. The low cache simulation overhead allows interactive use of the analysis tool and scales well with increasing associativity. The approach taken is based on a dataow specication of the problem and provides another step toward worstcase execution time prediction of contemporary architectures and its use in schedulability analysis for hard realtime systems.
An integrated path and timing analysis method based on cyclelevel symbolic execution
 Journal of RealTime Systems
, 1999
"... Abstract. Previously published methods for estimation of the worstcase execution time on highperformance processors with complex pipelines and multilevel memory hierarchies result in overestimations owing to insu cient path and/or timing analysis. This does not only give rise to poor utilization ..."
Abstract

Cited by 87 (3 self)
 Add to MetaCart
(Show Context)
Abstract. Previously published methods for estimation of the worstcase execution time on highperformance processors with complex pipelines and multilevel memory hierarchies result in overestimations owing to insu cient path and/or timing analysis. This does not only give rise to poor utilization of processing resources but also reduces the schedulability in realtime systems. This paper presents a method that integrates path and timing analysis to accurately predict the worstcase execution time for realtime programs on highperformance processors. The unique feature of the method is that it extends cyclelevel architectural simulation techniques to enable symbolic execution with unknown input data values; it uses alternative instruction semantics to handle unknown operands. We show that the method can exclude many infeasible (or nonexecutable) program paths and can calculate path information, such as bounds on number of loop iterations, without the need for manual annotations of programs. Moreover, the method is shown to accurately analyze timing properties of complex features in highperformance processors using multipleissue pipelines and instruction and data caches. The combined path and timing analysis capability is shown to derive exact estimates of the worstcase execution time for six out of seven programs in our benchmark suite. Keywords: Realtime systems, worstcase execution time, timing analysis, path analysis, symbolic execution, multipleissue processor, caches, architecture simulation. 1.
The WorstCase Execution Time Problem – Overview of Methods and Survey of Tools
 ACM Transactions on Embedded Computing Systems
, 2008
"... ATRs (AVACS Technical Reports) are freely downloadable from www.avacs.org Copyright c © April 2007 by the author(s) ..."
Abstract

Cited by 82 (18 self)
 Add to MetaCart
ATRs (AVACS Technical Reports) are freely downloadable from www.avacs.org Copyright c © April 2007 by the author(s)
Fully Automatic, Parametric WorstCase Execution Time Analysis
 In Workshop on WorstCase Execution Time (WCET) Analysis
, 2003
"... WorstCase Execution Time (WCET) analysis means to compute a safe upper bound to the execution time of a piece of code. Parametric WCET analysis yields symbolic upper bounds: expressions that may contain parameters. These parameters may represent, for instance, values of input parameters to the p ..."
Abstract

Cited by 52 (4 self)
 Add to MetaCart
(Show Context)
WorstCase Execution Time (WCET) analysis means to compute a safe upper bound to the execution time of a piece of code. Parametric WCET analysis yields symbolic upper bounds: expressions that may contain parameters. These parameters may represent, for instance, values of input parameters to the program, or maximal iteration counts for loops. We describe a technique for fully automatic parametric WCET analysis, which is based on known mathematical methods: an abstract interpretation to calculate parametric constraints on program flow, a symbolic method to count integer points in polyhedra, and a symbolic ILP technique to solve the subsequent IPET calculation of WCET bound. The technique is capable of handling unstructured code, and it can find upper bounds to loop iteration counts automatically.
Parametric timing analysis
 Workshop on Language, Compilers, and Tools for Embedded Systems
, 2001
"... Embedded systems often have realtime constraints. Traditional timing analysis statically determines the maximum execution time of a task or a program in a realtime system. These systems typically depend on the worstcase execution time of tasks in order to make static scheduling decisions so that ..."
Abstract

Cited by 47 (9 self)
 Add to MetaCart
Embedded systems often have realtime constraints. Traditional timing analysis statically determines the maximum execution time of a task or a program in a realtime system. These systems typically depend on the worstcase execution time of tasks in order to make static scheduling decisions so that tasks can meet their deadlines. Static determination of worstcase execution times imposes numerous restrictions on realtime programs, which include that the maximum number of iterations of each loop must be known statically. These restrictions can significantly limit the class of programs that would be suitable for a realtime embedded system. This paper describes workinprogress that uses static timing analysis to aid in making dynamic scheduling decisions. For instance, different algorithms with varying levels of accuracy may be selected based on the algorithm’s predicted worstcase execution time and the time allotted for the task. We represent the worstcase execution time of a function or a loop as a formula, where the unknown values affecting the execution time are parameterized. This parametric timing analysis produces formulas that can then be quickly evaluated at runtime so dynamic scheduling decisions can be made with little overhead. Benefits of this work include expanding the class of applications that can be used in a realtime system, improving the accuracy of dynamic scheduling decisions, and more effective utilization of system resources. 1.
Integrating Path and Timing Analysis using InstructionLevel Simulation Techniques
 IN PROC. SIGPLAN WORKSHOP ON LANGUAGES, COMPILERS AND TOOLS FOR EMBEDDED SYSTEMS (LCTES'98
, 1998
"... Previously published methods for estimation of the worstcase execution time on contemporary processors with complex pipelines and multilevel memory hierarchies result in overestimations owing to insufficient path and/or timing analysis. This paper presents a new method that integrates path and timi ..."
Abstract

Cited by 42 (0 self)
 Add to MetaCart
(Show Context)
Previously published methods for estimation of the worstcase execution time on contemporary processors with complex pipelines and multilevel memory hierarchies result in overestimations owing to insufficient path and/or timing analysis. This paper presents a new method that integrates path and timing analysis to address these limitations. First, it is based on instructionlevel architecture simulation techniques and thus has a potential to perform arbitrarily detailed timing analysis of hardware platforms. Second, by extending the simulation technique with the capability of handling unknown input data values, it is possible to exclude infeasible (or false) program paths in many cases, and also calculate path information, such as bounds on number of loop iterations, without the need for annotating the programs. Finally, in order to keep the number of program paths to be analyzed at a manageable level, we have extended the simulator with a pathmerging strategy. This paper presents th...
Automatic Accurate TimeBound Analysis for HighLevel Languages
 In Proceedings of the ACM SIGPLAN 1998 Workshop on Languages, Compilers, and Tools for Embedded Systems, volume 1474 of Lecture Notes in Computer Science
, 1998
"... This paper describes a general approach for automatic and accurate timebound analysis. The approach consists of transformations for building timebound functions in the presence of partially known input structures, symbolic evaluation of the timebound function based on input parameters, optimizati ..."
Abstract

Cited by 42 (9 self)
 Add to MetaCart
(Show Context)
This paper describes a general approach for automatic and accurate timebound analysis. The approach consists of transformations for building timebound functions in the presence of partially known input structures, symbolic evaluation of the timebound function based on input parameters, optimizations to make the overall analysis efficient as well as accurate, and measurements of primitive parameters, all at the sourcelanguage level. We have implemented this approach and performed a number of experiments for analyzing Scheme programs. The measured worstcase times are closely bounded by the calculated bounds. 1 Introduction Analysis of program running time is important for realtime systems, interactive environments, compiler optimizations, performance evaluation, and many other computer applications. It has been extensively studied in many fields of computer science: algorithms [20, 12, 13, 41], programming languages [38, 21, 30, 33], and systems [35, 28, 32, 31]. It is particularl...
Worstcase executiontime analysis for embedded realtime systems,”
 International Journal on Software Tools for Technology Transfer (STTT),
, 2003
"... ..."
An Approach To Symbolic WorstCase Execution Time Analysis
 In 25th IFAC Workshop on RealTime Programming
, 2000
"... Using the constant value for the worst case execution time for all calls to a subprogram is safe but pessimistic. We address the problem of tailoring the WCET of each call to a subprogram by building the WCET as an algebraic expression parameterised with some of the subprogram parameters. The WCE ..."
Abstract

Cited by 37 (2 self)
 Add to MetaCart
(Show Context)
Using the constant value for the worst case execution time for all calls to a subprogram is safe but pessimistic. We address the problem of tailoring the WCET of each call to a subprogram by building the WCET as an algebraic expression parameterised with some of the subprogram parameters. The WCET of each call may then be constrained to particular ranges of values that lead to tighter WCET. The technique relies on the power of computational algebra systems to perform sophisticated simplifications and evaluation of the intermediate expressions. The same approach also allows to obtain tighter estimations of nested loop iterations which may also be tailored for different execution calls. This approach requires the description of the nonfunctional behaviour of the code with annotations included as specially formatted comments. Copyright c 2000 IFAC Keywords: Realtime, timinganalysis. 1.
Tighter Timing Predictions by Automatic Detection and Exploitation of ValueDependent Constraints
 Proceedings of the IEEE RealTime Technology and Applications Symposium
, 1999
"... Predicting the worstcase execution time (WCET) of a realtime program isachallenging task. Though much progress has been made in obtaining tighter timing predictions by using techniques that model the architectural features of a machine, significant overestimations of WCET can still occur. Even wit ..."
Abstract

Cited by 27 (8 self)
 Add to MetaCart
(Show Context)
Predicting the worstcase execution time (WCET) of a realtime program isachallenging task. Though much progress has been made in obtaining tighter timing predictions by using techniques that model the architectural features of a machine, significant overestimations of WCET can still occur. Even with perfect architectural modeling, dependencies on data values can constrain the outcome of conditional branches and the corresponding set of paths that can be taken in a program. While valuedependent constraint information has been used in the past by some timing analyzers, it has typically been specified manually, which is both tedious and error prone. This paper describes efficient techniques for automatically detecting valuedependent constraints by a compiler and automatically exploiting these constraints within a timing analyzer. The result is tighter timing analysis predictions without requiring additional interaction with a user. 1.