Chapter 1 Computer Abstractions and Technology
Chapter 1 Computer Abstractions and Technology
5th
Edition
The Hardware/Software Interface
Chapter 1
Computer Abstractions
and Technology
§1.1 Introduction
The Computer Revolution
Progress in computer technology
Underpinned by Moore’s Law
The number of transistors in a IC doubles every
18-24 months
Makes novel applications feasible
Cell phones
World Wide Web
Search Engines
Self-driving car, drone
VR games
Computers are pervasive
Chapter 1 — Computer Abstractions and Technology — 2
Classes of Computers
Desktop computers
General purpose, variety of software
Subject to cost/performance tradeoff
Server computers
Network based
High capacity, performance, reliability
Range from small servers to building sized
Embedded computers
Hidden as components of systems
Stringent power/performance/cost constraints
Hierarchy of memories
Output
device
Network
cable
Input Input
device device
Cache memory : Small fast SRAM memory for immediate access to data
Technology
continues to
evolve
Increased DRAM capacity
capacity and
performance
Reduced cost
BAC/Sud BAC/Sud
Concorde Concorde
Douglas Douglas DC-
DC-8-50 8-50
0 100 200 300 400 500 0 2000 4000 6000 8000 10000
BAC/Sud BAC/Sud
Concorde Concorde
Douglas Douglas DC-
DC-8-50 8-50
Clock (cycles)
Data transfer/calculation
Update state
Performance improved by
Reducing number of clock cycles
Increasing clock rate
Hardware designer must often trade off clock
rate against cycle count
B I 600ps 1.2
CPU Time
…by this much
CPU Time I 500ps
A
Chapter 1 — Computer Abstractions and Technology — 25
CPI in More Detail
If different instruction classes take different
numbers of cycles
n
Clock Cycles (CPIi Instructio n Counti )
i1
Relative frequency
Class A B C
CPI for class 1 2 3
IC in sequence 1 2 1 2
IC in sequence 2 4 1 1
Sequence 1: IC = 5 Sequence 2: IC = 6
Clock Cycles Clock Cycles
= 2×1 + 1×2 + 2×3 = 4×1 + 1×2 + 1×3
= 10 =9
Avg. CPI = 10/5 = 2.0 Avg. CPI = 9/6 = 1.5
Chapter 1 — Computer Abstractions and Technology — 27
Performance Summary
The BIG Picture
Tcycle
IC CPI (=1/CR)
Instructio ns Clock cycles Seconds
CPU Time
Program Instructio n Clock cycle
Performance depends on
Algorithm: affects IC, possibly CPI
Programming language: affects IC, CPI
Compiler: affects IC, CPI
Instruction set architecture: affects IC, CPI, Tc
Power
consumption
goes with
clock rate
In CMOS IC technology
Power Capacitive load Voltage2 Frequency
×22 5V → 1V ×300
Chapter 1 — Computer Abstractions and Technology — 29
Reducing Power
n
n
Execution time ratio
i1
i
Taffected
Amdahl’s Law: Timproved Tunaffected
improvement factor
Example: multiply accounts for 80s/100s
How much improvement in multiply performance to
100 80
How about 5× ? 20 Can’t be done!
5 n
Chapter 1 — Computer Abstractions and Technology — 35
Example
Suppose we enhance a machine making all floating-point
instructions run five times faster. If the execution time of
some benchmark before the floating-point enhancement is 10
sec, what will the speedup be if half of the 10 sec is spent
executing floating-point instructions?
Clock rate
CPI varies between programs on a given CPU