MCS-284 Homework 1 (Fall 1999)

Due: September 15, 1999

  1. From the data on page 73, how much higher is the CPI of the 200 MHz Pentium system than the CPI of the 100 MHz Pentium system on the SPECint95 workload? On the SPECfp95 workload? (Ignore the issue that each SPEC ratio is actually a geometric mean over different programs; pretend that a single int workload and a single fp workload is represented.) Be sure to use the numerical data given in the text rather than trying to estimate the numbers from the graph. You'll get more precise results that way.

  2. Do exercises 2.31-2.32 on page 96.

  3. You are the manager of a microprocessor design team. Your microprocessor currently has an average CPI of 1.5. The software that will run on your microprocessor already exists and is fixed: it will not be rewritten or recompiled in response to your design decisions. One of the members of your design team suggests a change that will reduce the CPI of multiply instructions from 3 to 2 (and leave the CPI of other instructions unchanged). However, it will require lengthening the cycle time by 5%. You need to decide whether this change is desirable or not.

    Note that if the software makes no use of multiply instructions, the change will be a bad idea, since the cycle time will be increased without any decrease in the number of cycles. Conversely, if the software is nothing but multiply instructions, the change will be a good idea, since one third of the cycles will be eliminated, which will more than pay for a 5% increase in cycle time.

    Real software is presumably somewhere in between these two extremes. What fraction of the instructions executed need to be multiplies for the proposed change to be a good one?

Instructor: Max Hailperin