Page 163 - A Practical Guide from Design Planning to Manufacturing
P. 163

136   Chapter Five

        this would unnecessarily penalize short instructions, which also tend
        to be common.
          The most important rule in designing for high performance is to make
        the common case fast. There is no need to waste large amounts of design
        time and die area on functions that are seldom used. This idea is sometimes
        formally referred to as  Amdahl’s law, which estimates the overall
        speedup obtained by decreasing the time spent on some fraction of a job. 1

          Amdahl’s law:

                 Overall speedup =  old time  =  1     +  fraction
                                  new time   1 −  fraction  speedup
                                                     n
          If the fraction of execution time reduced is very small, then even a very
        large speedup for that piece will have very little impact on overall per-
        formance. The concept of Amdahl’s law is used again and again in microar-
        chitecture. Resources are often better spent on small improvements for
        the most common operations instead of large speedups for rare events.
        Many microarchitectural ideas slow down rare occurrences if that will
        speed up the common case.
          Frequency is the same for all instructions, so Amdahl’s law applies
        only to improvements in IPC. More functional units allow higher issue
        width. Better reordering algorithms reduce pipeline stalls. More spe-
        cialized logic reduces the latency of computation. Larger caches can
        reduce the average latency of memory accesses. All of these microarchi-
        tectural changes improve IPC but at the cost of design complexity and
        die area. Fred Pollack compared the relative performance of different
        Intel processors and found that in the same fabrication technology, per-
        formance improved roughly with the square root of added die area. This
        relationship is often called Pollack’s rule. 2
          Pollack’s rule:

                             Performance ∝  die area


          This rule of thumb means that a new microarchitecture that requires
        twice the die area will likely provide only a 40 percent improvement in
        performance. The large amounts of new transistors needed for higher
        performance microarchitectures have been made possible by Moore’s law.
        Roadblocks to fabricating ever-smaller transistors may continue to be
        overcome, but continued increases in microarchitectural complexity



          1
          Amdahl, “Validity of the single-processor approach.”
          2
          Pollack, “New Microarchitecture Challenges.”
   158   159   160   161   162   163   164   165   166   167   168