Static Analysis of CPU Execution Time Using Implict
Path Enumeration Techniques
Manjunath T.K , Sharmila Chidaravalli
Amruta Institute of Engineering & Management Sciences, Depatment of Computer Science,
Bengaluru-562109,India.
manju_mist@rediffmail.com,c.sharmila11@gmail.com
Abstract. Static Analysis of CPU execution time using implicit path
enumeration is an approach where translator predicts the execution time of a
program. Basically translator is a System Software which converts computer
languages to machine understandable formats. Generally these translators will
not estimate the CPU execution time of a given program, because execution
time usually depends on execution environment like user inputs, system status,
and system architecture and so on. This paper provides approach of to predict
the CPU execution time of a given program during translation process.
Keywords: Execution time, Path Analysis, Timing Analysis, Static Analysis,
Object code.
1 Introduction
The execution time of a program that runs uninterrupted on a processor depends both
on program characteristics and the hardware that executes the program. For a simple
processor where single instructions have a fixed execution time, the program
execution time is solely determined by the input data given to the program. The input
data can influence the path taken through the program and the number of loop
iterations done in loops and this causes the execution time to vary. For a more
complex computer system execution time also depends on the previous programs that
have executed on the processor, the execution history of the system. Also some single
instructions can have an execution time that depends on the input data. A good
example of the added complexity is to consider a data cache that holds recently
fetched data from the main memory. A single load instruction that loads data from the
memory executes fast if the data already exists in the cache (a cache hit) and slow if it
must fetch data from memory (a cache miss). The outcome can depend both on the
previous content of the data cache (the execution history) and the address used when
accessing memory and this address can depend on the input data given to the
program. The paper provides an approach to predict Execution Time of a program
during translation Process. Various techniques and tools are available to analyze
programs behavior using static and dynamic analysis. By predicting the execution
paths using static analysis, during translation process it is possible to estimate
execution time by accepting user inputs.
V.V. Das and N. Thankachan (Eds.): CIIT 2011, CCIS 250 pp. 315–319, 2011.
© Springer-Verlag Berlin Heidelberg 2011