Computer Architecture Solution
Computer Architecture Solution
CAD
1. [5pts] Find the CPI (Cycle Per Instruction) if the clock cycle time is 0.333 nanoseconds.
Ans: 0.94
Method:
CPI = execution time / (instruction count * clock cycle time)
=
750
( 2.38910 )(0.3331 09)
12
750
796
= 0.94
2. [5pts] Find the SPECratio.
Ans: 12.9
Method:
As per definition SPECratio defined as,
SPECratio = reference time / execution time
=
9650
750
= 12.9
3. [5pts] find the increase in CPU time if the number of instructions of the benchmark is
increased by 10% without affecting the CPI.
Ans:
Increase in CPU time = 1 - 823/750 = 0.1 (10%)
instruction count * 1.1 = 2.628, CPU time = 823s
4. [5pts] find the increase in the CPU time if the number of instructions of the benchmark
is increased by 10% and the CPI is increased by 5%.
Ans:
increase in CPU time = 901/750 - 1 = 0.2 (20%)
CPI * 1.1 = 1.03, CPU time = 901s
5. [5pts] find the change in the SPECratio for this change
Ans:
SPECratio for this change = 10.7
6. [10pts] Suppose that we are developing a CPU B with a 4 GHz clock rate. We have also
added some additional instructions to the instruction set so that the number of instructions
has been increased by 15%. The execution time is reduced to 700 seconds. Find the new
CPI.
Ans:
CPI new = 1.38
instruction count new = 2.031E12, clock rate = 4.0 x 10 9
7. [10pts] This CPI value is larger than obtained in the Question 1 above as the clock rate
was increased from 3 GHz to 4 GHz. Determine whether the increase in the CPI is similar
to that of the clock rate. If they are dissimilar, why?
Ans:
they are dissimilar because instruction count has been reduced.
clock rate ratio = 4 GHz / 3 GHz = 1.33
CPI ratio = 1.38 / 0.94 = 1.47
8. [5pts] By how much has the CPU time been reduced?
Ans:
The CPU time has been reduced by 7%.
9. [10pts] For an another benchmark named P2, assume an execution time of 960 ns, CPI of
1.61, and clock rate of 3 GHz. If the execution time is reduced by an additional 10%
without affecting the CPI and with a clock rate of 4 GHz, determine the number of
instructions.
Ans:
// In 1.11.9, execution time is 960ns. but I think it is "s" not "ns".
Therefore, I will use "s" instead of "ns".