Page 82 -
P. 82

2.6 / RECOMMENDED READING AND WEB SITES 57

                  Amdahl’s law illustrates the problems facing industry in the development of multi-
                  core machines with an ever-growing number of cores: The software that runs on
                  such machines must be adapted to a highly parallel execution environment to ex-
                  ploit the power of parallel processing.
                       Amdahl’s law can be generalized to evaluate any design or technical improve-
                  ment in a computer system. Consider any enhancement to a feature of a system that
                  results in a speedup.The speedup can be expressed as
                          Performance after enhancement   Execution time before enhancement
               Speedup =                                =
                          Performance before enhancement   Execution time after enhancement
                                                                                      (2.8)
                       Suppose that a feature of the system is used during execution a fraction of the
                  time f, before enhancement, and that the speedup of that feature after enhancement
                  is SU .Then the overall speedup of the system is
                      f
                                                       1
                                       Speedup =
                                                 (1 - f) +  f
                                                           SU f
                  For example, suppose that a task makes extensive use of floating-point operations,
                  with 40% of the time is consumed by floating-point operations. With a new hard-
                  ware design, the floating-point module is speeded up by a factor of K. Then the
                  overall speedup is:
                                                       1
                                         Speedup =
                                                    0.6 +  0.4
                                                          K
                  Thus, independent of K, the maximum speedup is 1.67.


             2.6 RECOMMENDED READING AND WEB SITES


                  A description of the IBM 7000 series can be found in [BELL71].There is good coverage of the
                  IBM 360 in [SIEW82] and of the PDP-8 and other DEC machines in [BELL78a]. These three
                  books also contain numerous detailed examples of other computers spanning the history of
                  computers through the early 1980s. A more recent book that includes an excellent set of case
                  studies of historical machines is [BLAA97].A good history of the microprocessor is [BETK97].
                       [OLUK96], [HAMM97], and [SAKA02] discuss the motivation for multiple processors
                  on a single chip.
                       [BREY09] provides a good survey of the Intel microprocessor line. The Intel docu-
                  mentation itself is also good [INTE08].
                       The most thorough documentation available for the ARM architecture is [SEAL00]. 11
                  [FURB00] is another excellent source of information. [SMIT08] is an interesting comparison
                  of the ARM and x86 approaches to embedding processors in mobile wireless devices.
                       For interesting discussions of Moore’s law and its consequences, see [HUTC96],
                  [SCHA97], and [BOHR98].
                       [HENN06] provides a detailed description of each of the benchmarks in CPU2006.
                  [SMIT88] discusses the relative merits of arithmetic, harmonic, and geometric means.

                  11 Known in the ARM community as the “ARM ARM.”
   77   78   79   80   81   82   83   84   85   86   87