In: Computer Science
Compilers can have a profound impact on the performance of an application. Assume that for a program, compiler A results in a dynamic instruction count of 1.0E9 and has an execution time of 1.1 s, while compiler B results in a dynamic instruction count of 1.2E9 and an execution time of 1.5 s.
Find the average CPI for each program given that the processor
has a clock cycle time of 1 ns.
Program A: ___________
Program B: ___________
Assume the compiled programs run on two different processors. If
the execution times on the two processors are the same, how much
faster is the clock of the processor running compiler A’s code
versus the clock of the processor running compiler B’s code?
A new compiler is developed that uses only 6.0E8 instructions and
has an average CPI of 1.1. What is the speedup of using this new
compiler versus using compiler A or B on the original
processor?
new compiler vs compiler A: ___________
new compiler vs compiler B: ___________
1)
Execution Time = Instruction Count x CPI x Clock Cycle Time
For Program A,
1.1 = 10^9 x CPI x 10^-9
CPI = 1.1
So for Program A, CPI = 1.1
For Program B,
1.5 = 1.2 x 10^9 x CPI x 10^-9
CPI = 1.25
So for Program A, CPI = 1.25
2)
It is given that execution times are same
But we know that
So Processor A is actually slower than B
3)
For new compiler vs compiler A:
So the new compiler is 1.66 times faster than Compiler A
For new compiler vs compiler B:
So the new compiler is 2.27 times faster than Compiler B