A comparison of dynamic branch predictors that use two levels of branch history
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
Computer architecture (2nd ed.): a quantitative approach
Computer architecture (2nd ed.): a quantitative approach
Worst Case Execution Time Analysis for a Processor withBranch Prediction
Real-Time Systems - Special issue on worst-case execution-time analysis
Semiconductors: the digital signal processor derby
IEEE Spectrum - IEEE medal of honor Herwig Kogelnik
Reliable and Precise WCET Determination for a Real-Life Processor
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
Timing Anomalies in Dynamically Scheduled Microprocessors
RTSS '99 Proceedings of the 20th IEEE Real-Time Systems Symposium
Modeling control speculation for timing analysis
Real-Time Systems
A time-predictable execution mode for superscalar pipelines with instruction prescheduling
Proceedings of the 2nd conference on Computing frontiers
A time-predictable VLIW processor and its compiler support
Real-Time Systems
Client-Centric Performance Analysis of a High-Availability Cluster
ISAS '07 Proceedings of the 4th international symposium on Service Availability
Challenges in Relational Learning for Real-Time Systems Applications
ILP '08 Proceedings of the 18th international conference on Inductive Logic Programming
Time-predictable computer architecture
EURASIP Journal on Embedded Systems - FPGA supercomputing platforms, architectures, and techniques for accelerating computationally complex algorithms
Static timing analysis of real-time operating system code
ISoLA'04 Proceedings of the First international conference on Leveraging Applications of Formal Methods
Ensuring real-time performance guarantees in dynamically reconfigurable embedded systems
EUC'05 Proceedings of the 2005 international conference on Embedded and Ubiquitous Computing
Providing configurable qos management in real-time systems with qos aspect packages
Transactions on Aspect-Oriented Software Development II
Hi-index | 0.00 |
This paper investigates how dynamic branch prediction in a microprocessor affects the predictability of execution time for software running on that processor.By means of experiments on a number f real processors employing various forms of branch prediction, we evaluate the impact of branch predictors on executiontime predictability.The results indicate that dynamic branch predictorsgive a high and hard-to-predict variation in the execution time of even very simple loops, and that the execution time effects of branch mispredictions can be verylarge relative to the execution time of regular instructions. We have observed some cases where executing more iterations of a loop actually take less time thanexecuting fewer iterations, due to the effect of dynamicbranch predictors.We conclude that current dynamic branch predictions schemes are not suitable for use in real-time systems where execution time predictability is desired.