Computer Abstractions and Technology
Computer Abstractions and Technology
Computer Abstractions and Technology
Chapter 1
Computer Abstractions
and Technology
◼ 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
◼ Dependability via redundancy
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 Count i )
i=1
Relative frequency
◼ 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
n
n
Execution time ratio
i=1
i
10 10
Overall ssj_ops per Watt = ssj_ops i poweri
i=0 i=0
Instructio n count
MIPS =
Execution time 10 6
Instructio n count Clock rate
= =
Instructio n count CPI CPI 10 6
10 6
Clock rate
◼ CPI varies between programs on a given CPU
Chapter 1 — Computer Abstractions and Technology — 49
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 — 50