Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
Real-time Euclid: a language for reliable real-time systems
IEEE Transactions on Software Engineering - Special issue on reliability and safety in real-time process control
Software pipelining: an effective scheduling technique for VLIW machines
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
A portable global optimizer and linker
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Calculating the maximum, execution time of real-time programs
Real-Time Systems
High-performance computer architecture (2nd ed.)
High-performance computer architecture (2nd ed.)
Experiments with a Program Timing Tool Based on Source-Level Timing Schema
Computer - Special issue on real-time systems
Combining static worst-case timing analysis and program proof
Real-Time Systems
CTADEL: a generator of multi-platform high performance codes for PDE-based scientific applications
ICS '96 Proceedings of the 10th international conference on Supercomputing
Computer architecture (2nd ed.): a quantitative approach
Computer architecture (2nd ed.): a quantitative approach
Bounding Pipeline and Instruction Cache Performance
IEEE Transactions on Computers
High Performance Compilers for Parallel Computing
High Performance Compilers for Parallel Computing
Tomorrow's Weather Forecast: Automatic Code Generation for Atmospheric Modeling
IEEE Computational Science & Engineering
Deriving Annotations for Tight Calculation of Execution Time
Euro-Par '97 Proceedings of the Third International Euro-Par Conference on Parallel Processing
Automatic Accurate Time-Bound Analysis for High-Level Languages
LCTES '98 Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems
Integrating Path and Timing Analysis Using Instruction-Level Simulation Techniques
LCTES '98 Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems
Timing Analysis for Data Caches and Set-Associative Caches
RTAS '97 Proceedings of the 3rd IEEE Real-Time Technology and Applications Symposium (RTAS '97)
Tighter Timing Predictions by Automatic Detection and Exploitation of Value-Dependent Constraints
RTAS '99 Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium
Worst case timing analysis of RISC processors: R3000/R3010 case study
RTSS '95 Proceedings of the 16th IEEE Real-Time Systems Symposium
Efficient microarchitecture modeling and path analysis for real-time software
RTSS '95 Proceedings of the 16th IEEE Real-Time Systems Symposium
Integrating the timing analysis of pipelining and instruction caching
RTSS '95 Proceedings of the 16th IEEE Real-Time Systems Symposium
OM '01 Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems
Path clustering in software timing analysis
IEEE Transactions on Very Large Scale Integration (VLSI) Systems - System Level Design
Automatic detection and exploitation of branch constraints for timing analysis
IEEE Transactions on Software Engineering
Deadline Analysis of Interrupt-Driven Software
IEEE Transactions on Software Engineering
Modeling control speculation for timing analysis
Real-Time Systems
Improving WCET by applying a WC code-positioning optimization
ACM Transactions on Architecture and Code Optimization (TACO)
A Method for Computing the Number of Iterations in Data Dependent Loops
Real-Time Systems
Improving WCET by applying worst-case path optimizations
Real-Time Systems
Chronos: A timing analyzer for embedded software
Science of Computer Programming
The worst-case execution-time problem—overview of methods and survey of tools
ACM Transactions on Embedded Computing Systems (TECS)
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
SPEED: precise and efficient static estimation of program computational complexity
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Control-flow refinement and progress invariants for bound analysis
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
WISE: Automated test generation for worst-case complexity
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
SPEED: Symbolic Complexity Bound Analysis
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
Stack bounds analysis for microcontroller assembly code
WESS '09 Proceedings of the 4th Workshop on Embedded Systems Security
Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
MEMOCODE'09 Proceedings of the 7th IEEE/ACM international conference on Formal Methods and Models for Codesign
Worst-case execution time analysis for a Java processor
Software—Practice & Experience
Parametric timing analysis and its application to dynamic voltage scaling
ACM Transactions on Embedded Computing Systems (TECS)
Modeling complex flows for worst-case execution time analysis
RTSS'10 Proceedings of the 21st IEEE conference on Real-time systems symposium
ABC: algebraic bound computation for loops
LPAR'10 Proceedings of the 16th international conference on Logic for programming, artificial intelligence, and reasoning
Practical experiences of applying source-level WCET flow analysis on industrial code
ISoLA'10 Proceedings of the 4th international conference on Leveraging applications of formal methods, verification, and validation - Volume Part II
Branch target buffers: WCET analysis framework and timing predictability
Journal of Systems Architecture: the EUROMICRO Journal
Identifying irreducible loops in the Instrumentation Point Graph
Journal of Systems Architecture: the EUROMICRO Journal
Static timing analysis for hard real-time systems
VMCAI'10 Proceedings of the 11th international conference on Verification, Model Checking, and Abstract Interpretation
Analyzing loop paths for execution time estimation
ICDCIT'05 Proceedings of the Second international conference on Distributed Computing and Internet Technology
Mesh independent loop fusion for unstructured mesh applications
Proceedings of the 9th conference on Computing Frontiers
A hybrid approach for resource-based comparison of adaptable Java applications
Science of Computer Programming
Computation takes time, but how much?
Communications of the ACM
Hi-index | 0.02 |
Static timing analyzers, which are usedto analyze real-time systems, need to know the minimum and maximumnumber of iterations associated with each loop in a real-timeprogram so accurate timing predictions can be obtained. Thispaper describes three complementary methods to support timinganalysis by bounding the number of loop iterations. First, analgorithm is presented that determines the minimum and maximumnumber of iterations of loops with multiple exits. Even whenthe number of iterations cannot be exactly determined, it isdesirable to know the lower and upper iteration bounds. Second,when the number of iterations is dependent on unknown valuesof variables, the user is asked to provide bounds for these variables.These bounds are used to determine the minimum and maximum numberof iterations. Specifying the values of variables is less errorprone than specifying the number of loop iterations directly.Finally, a method is given to tightly predict the execution timeof inner loops whose number of iterations is dependent on countervariables of outer level loops. This is accomplished by formulatingthe total number of iterations of a loop in terms of summationsand solving the resulting equation. These three methods havebeen successfully integrated in an existing timing analyzer thatpredicts the performance for optimized code on a machine thatexploits caching and pipelining. The result is tighter timinganalysis predictions and less work for the user.