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.”