This is a lot of exercises, but most of them are simple arithmetic and shouldn't take long.
Exercises 1.4.1 through 1.4.6 on calculating the performance of computers. Use row b numbers for each problem.
Exercises 1.6.1 through 1.6.3 on the effect of compilers on performance. Use row b numbers for each problem.
Exercises 1.10.1 through 1.10.4 on the speedup of multicore processors (note that these figures make the very optimistic assumption that an n-core processor only has to execute 1/n as many instructions per core!) Use row b numbers for each problem.
Exercise 1.10.5 on power consumption in a multicore processor.
Note: The formulæ in the book have incorrect
units. The correct formulæ (which I figured out by looking at
the solutions manual for instructors) should be
Power = 5.0 mA/(Volt MHz) * Voltage2 * FrequencyThis problem doesn't depend on the numbers in the table, so it doesn't matter whether you look at row a or row b.
Voltage = 1/5 Volt/GHz * Frequency + 0.4 Volt
Exercises 1.14.1 through 1.14.6 on different ways to measure performance (use row b numbers)
Exercises 1.15.1 through 1.15.6 on Amdahl's Law: how much speedup
do you get by speeding up one kind of instruction? (use row b numbers)
Note: Problem 1.15.2 is strangely written. I would
word it differently: "How much do you need to speed up the INT operations
in order to reduce the total time by 20%?"
Another note: Exercises 1.15.4-6 mention the
number of processors and the clock speed, but neither of these things
actually affects the answers to the questions.
Exercises 1.16.4 through 1.16.6 are about the realistic problem
that the more processors you have, the more time they have to spend
communicating with one another rather than computing.
Hint: for problem 1.16.6, remember the definition of
"routing time" (on the previous page).