Chapter 1: Computer Abstractions and Technology
Chapter 1: Computer Abstractions and Technology
Chapter 1
Computer Abstractions
and Technology
Lecture slides are adapted/modified from slides provided by the textbook,
Computer Organization and Design by David A Patterson and John L. Hennessy
publisher Morgan Kaufmann Publisher
Classes of Computers
Personal computers
Server computers
Network based
High capacity, performance, reliability
Range from small servers to building sized
Classes of Computers
Supercomputers
Embedded computers
Battery operated
Connects to the Internet
Hundreds of dollars
Smart phones, tablets, electronic glasses
Cloud computing
Cloud Computing
Cloud computing refers to
(1) large collection of servers that
provide services over the Internet,
(2) dynamically varying number of
servers as a utility.
SaaS: a portion of code runs on PMD
and a portion that runs in the Cloud.
Chapter 1 Computer Abstractions and Technology 7
Understanding Performance
Algorithm
Hierarchy of memories
Application software
System software
Handling input/output
Managing memory and storage
Scheduling tasks & sharing resources
Hardware
High-level language
Assembly language
Hardware representation
Components of a Computer
The BIG Picture
Desktop, server,
embedded
Input/output includes
User-interface devices
Storage devices
Network adapters
Touchscreen
PostPC device
Supersedes keyboard
and mouse
Resistive and
Capacitive types
Apple A5
Abstractions
The BIG Picture
Implementation
Magnetic disk
Flash memory
Optical disk (CDROM, DVD)
Networks
Electronics
technology
continues to evolve
Increased capacity
and performance
Reduced cost
DRAM capacity
Year
Technology
Relative performance/cost
1951
Vacuum tube
1965
Transistor
1975
1995
2013
1
35
900
2,400,000
Technology Trends
250,000,000,000
Chapter 1 Computer Abstractions and Technology 22
Semiconductor Technology
Silicon: semiconductor
Add materials to transform properties:
Conductors
Insulators
Switch
Manufacturing ICs
1.6 Performance
Defining Performance
Response time
Throughput
Relative Performance
10s on A, 15s on B
Execution TimeB / Execution TimeA
= 15s / 10s = 1.5
So A is 1.5 times faster than B
Chapter 1 Computer Abstractions and Technology 29
Elapsed time
CPU time
CPU Clocking
Clock (cycles)
Data transfer
and computation
Update state
CPU Time
CPU Time CPU Clock Cycles Clock Cycle Time
CPU Clock Cycles
Clock Rate
Performance improved by
CPU Time B
6s
Clock Cycles A CPU Time A Clock Rate A
10s 2GHz 20 10 9
1.2 20 10 9 24 10 9
Clock RateB
4GHz
6s
6s
Chapter 1 Computer Abstractions and Technology 33
Clock Rate
CPI Example
CPU Time
B I 600ps 1.2
CPU Time
I 500ps
A
by this much
n
Clock Cycles
Instruction Count i
CPI
CPIi
Instruction Count i1
Instruction Count
Relative frequency
Chapter 1 Computer Abstractions and Technology 36
CPI Example
Class
IC in sequence 1
2+1+2=5 inst.
IC in sequence 2
4+1+1=6 inst.
Sequence 1: IC = 5
Clock Cycles
= 21 + 12 + 23
= 10
Avg. CPI = 10/5 = 2.0
Sequence 2: IC = 6
Clock Cycles
= 41 + 12 + 13
=9
Avg. CPI = 9/6 = 1.5
Performance Summary
The BIG Picture
Program
Instruction Clock cycle
Performance depends on
In CMOS IC technology
Power Trends
30
5V 1V
1000
Reducing Power
0.85
0.52
2
Pold
Cold Vold Fold
Uniprocessor Performance
Multiprocessors
Multicore microprocessors
Hard to do
SPEC CPU2006
i 1
Performance: ssj_ops
Power: Watts (Joules/sec)
10
ssj_ops
i0
10
power
i0
Taffected
Tunaffected
improvemen t factor
Instruction count
MIPS
Execution time 10 6
Instruction count
Clock rate
6
Instruction count CPI
CPI
10
6
10
Clock rate
Concluding Remarks
Cost/performance is improving