Professional Documents
Culture Documents
07performance Cse130 Fa19 KV
07performance Cse130 Fa19 KV
Miller
Performance
Principles of Computer System Design
© 2019 Ethan L. Miller
Measuring performance
❖ Computer systems can be measured in many aspects
❖ Time-based metrics
‣ Latency: time between input and result
‣ Throughput: rate of results (useful work) per unit time
Capacity-based metrics
❖ System has a certain amount of a resource
‣ Some used at the “current” level: useful work
‣ Some consumed at levels below: overhead
❖ Examples:
‣ In-Memory Hash-Table
‣ Multi-threaded HTTP Server
Latency Tesla gets the rst 2 people there much faster: about 1 hour
Bandwidth School bus gets all people there much faster: about 40 hours
Time-based metrics
❖ Latency: elapsed time for a single action
❖ Throughput: rate of actions per unit time
Amazon Snowmobile
https://aws.amazon.com/snowmobile/
Remember!
Concurrency
❖ Concurrency can reduce latency
‣ Run multiple stages (or parts of stages) in parallel
‣ Overall latency is reduced!
❖ Concurrency can increase throughput
‣ Each stage works on a di erent request
‣ Pipeline: assembly line
• Think: Factory line!
fi
© 2019 Ethan L. Miller
Measuring performance
❖ Measuring computer system performance requires
‣ Computer system
‣ Workload