Do questions 1.1 – 1.26 from your textbook.
Suppose we have two machines M1 and M2, and we run a program on each one (not the same program). Consider the following information and measurements made on these machines:
|
|
|
|
| Time |
|
|
| Instructions Executed |
|
|
| Clock Rate |
|
|
Find the instruction execution rate (instructions per second) for each experiment.
Find the clock cycles per instruction (CPI) for each experiement.
Consider two different implementations, M1 and M2, of the same instruction set. There are four classes of instructions (A, B, C, and D) in the instruction set.
M1 has a clock rate of 650MHz and M2 has a clock rate of 900MHz. The average number of cycles for each instruction class and the instruction distribution for a certain program is as follows:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
How much faster is the program on M2 than on M1?
At what clock rate would M1 have the same performance as the 900MHz M2?
| floating-point multiply | 15% |
| floating-point add | 20% |
| floating-point divide | 5% |
| integer instructions | 60% |
| floating-point multiply | 8 |
| floating-point add | 5 |
| floating-point divide | 25 |
| integer instructions | 2 |
| floating-point multiply | 40 |
| floating-point add | 25 |
| floating-point divide | 60 |