Chapter 01
Chapter 01
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
◼ Makes novel applications feasible
◼ Computers in automobiles
◼ Cell phones
◼ Human genome project
◼ World Wide Web
◼ Search Engines
◼ Computers are pervasive
◼ 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
Computer board
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
and computation
Update state
B = I 600ps = 1.2
CPU Time
…by this much
CPU Time I 500ps
A
Chapter 1 — Computer Abstractions and Technology — 35
CPI in More Detail
◼ If different instruction classes take different
numbers of cycles
n
Clock Cycles = (CPIi Instruction Counti )
i=1
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 — 37
Performance Summary
The BIG Picture
◼ Performance depends on
◼ Algorithm: affects IC, possibly CPI
◼ Programming language: affects IC, CPI
◼ Compiler: affects IC, CPI
◼ Instruction set architecture: affects IC, CPI, Tc
◼ In CMOS IC technology
Power = Capacitive load Voltage 2 Frequency
×30 5V → 1V ×1000
×30 5V → 1V ×1000
n
n
Execution time ratio
i=1
i
10 10
Overall ssj_ops per Watt = ssj_opsi poweri
i =0 i =0
• ssj_opsi is performance at each 10% increment and
• poweri is power consumed at each performance level.
Instruction count
MIPS =
Execution time 106
Instruction count Clock rate
= =
Instruction count CPI CPI 10 6
10 6
Clock rate
◼ CPI varies between programs on a given CPU
Chapter 1 — Computer Abstractions and Technology — 55
§1.9 Concluding Remarks
Concluding Remarks
◼ Cost/performance is improving
◼ Due to underlying technology development
◼ Hierarchical layers of abstraction
◼ In both hardware and software
◼ Instruction set architecture
◼ The hardware/software interface
◼ Execution time: the best performance
measure
◼ Power is a limiting factor
◼ Use parallelism to improve performance
Chapter 1 — Computer Abstractions and Technology — 56