3. 3
Moore's Law
Original version:
The density of transistors in an integrated circuit will double
every year. (Gordon Moore, Intel, 1965)
Current version:
Cost/performance of silicon chips doubles every 18 months.
4. 4
Moore's Law and System Design
Design system: 2000
Production use: 2003
Withdrawn from production: 2013
Processor speeds: 1 1.9 28
Memory sizes: 1 1.9 28
Disk capacity: 1 2.2 51
System cost: 1 0.4 0.01
5. 5
Moore's Law: Rules of Thumb
Planning assumptions:
Every year:
cost/performance of silicon chips improves 25%
cost/performance of magnetic media improves 30%
10 years = 100:1
20 years = 10,000:1
6. 6
Parkinson's Law
Original: Work expands to fill the time available. (C.
Northcote Parkinson)
Planning assumptions:
(a) Demand will expand to use all the hardware available.
(b) Low prices will create new demands.
(c) Your software will be used on equipment that you have not
envisioned.
7. 7
False Assumptions
Unix file system will never exceed 2 Gbytes (232 bytes).
AppleTalk networks will never have more than 256 hosts (28 bits).
GPS software will not last 1024 weeks.
Nobody at Dartmouth will ever earn more than $10,000 per month.
etc., etc., .....
8. 8
Moore's Law and the Long Term
1965 When?
What
level?
2000?
Within your
working life?
9. 9
Predicting System Performance
• Mathematical models
• Simulation
• Direct measurement
All require detailed understanding of the
interaction between software and systems.
12. 12
Mathematical Models
Queueing theory
Good estimates of congestion can be made for single-
server queues with:
• arrivals that are independent, random events
(Poisson process)
• service times that follow families of distributions
(e.g., negative exponential, gamma)
Many of the results can be extended to multi-server
queues.
13. 13
Utilization: Rule of Thumb
utilization =
mean service time
mean inter-arrival time
When the utilization of any system component
exceeds 30%, be prepared for congestion.
15. 15
Simulation
Model the system as set of states and events
advance simulated time
determine which events occurred
update state and event list
repeat
Discrete time simulation: Time is advanced in fixed steps
(e.g., 1 millisecond)
Next event simulation: Time is advanced to next event
Events can be simulated by random variables (e.g., arrival
of next customer, completion of disk latency)
16. 16
Timescale
Operations per second
CPU instruction: 400,000,000
Disk latency: 60
read: 25,000,000 bytes
Network LAN: 10,000,000 bytes
dial-up modem: 6,000 bytes
17. 17
Measurements on Operational Systems
• Benchmarks: Run system on standard problem
sets, sample inputs, or a simulated load on the system.
• Instrumentation: Clock specific events.
18. 18
Serial and Parallel Processing
Single thread v. multi-thread
e.g., Unix fork
Granularity of locks on data
e.g., record locking
Network congestion
e.g., back-off algorithms
19. 19
Example: Performance of Disk Array
Each transaction must:
wait for specific disk platter
wait for I/O channel
signal to move heads on disk platter
wait for I/O channel
pause for disk rotation
read data
Close agreement between: results from queueing theory,
simulation, and direct measurement (within 15%).