Professional Documents
Culture Documents
Response time
Lecture 2: Performance
Measure one task
e.g. A simulation program finishes in 20 minutes
Evaluation Methodology Throughput
Measure many tasks
and Dependability
e.g. A web server serves 5 million requests per second
Other metrics
MIPS (million instruction per second)
Chapter 1 (1.7~1.9) MFLOPS (millions of floating point operations per
second)
BIPS, GFLOPS
Clock frequency
3 4
1
Performance of Computers Benchmark Suite
Performance is defined for a given program and a given
machine. How about the machine alone? Need Benchmark suite is a collection of benchmarks with a
benchmark programs: variety of applications
Real applications: scientific programs, compilers, Alleviating weakness of a single benchmark
text-processing software, image processing More representative for computer designers to evaluate
Modified applications: providing portability and focus their design
Kernels: good to isolate performance of individual Categories of benchmark suites
features Desktop benchmarks: CPU, memory, and graphics
Lmbench: measure latency and bandwidth of memory, file performance
system, networking, etc.
Sever benchmarks: throughput-oriented, I/O and OS
Toy benchmarks intensive
Synthetic benchmarks: matching average execution Embedded benchmarks: measuring the ability to meet
profile deadline and save power
5 6
7 8
2
TPC Benchmarks Embedded Benchmark
TPC Measuring the ability of a system EEMBC (Embedded Microprocessor
to handle transactions (www.tpc.org) Benchmark Consortium) benchmarks
TPC-C, TPC-E: online transaction processing (www.eembc.org)
(OLTP) benchmark (for bank/brokerage)
Based on kernel performance
TPC-H, TPC-DS: decision support
Classes: telecommunications, networking,
TPC-VMS: Virtualization
digital media, Java, automotive/industrial,
consumer, and office equipment products
9 10
11 12
3
Metric 2: Weighted
Metric 3: Geometric Mean
Arithmetic Mean Based on relative performance to a reference
machine
Give (different) weights to different n
programs
n
Execution time ratio
i =1
i
13 14
Example SPECRate
How to get average of normalized execution time?
15 16
4
Amdahls Law Amdahls Law
We know about performance: defining, Predict overall speedup from local
measuring, and summarizing speedup by an enhancement, provided
the frequency to use the enhancement
How to maximize performance gains from
is know.
the beginning in our design?
17 18
5
CPI and IPC CPU Time Equation
CPI: Average number of cycles spent for CPU time = CPU clock cycles cycle time
each instruction
CPU clock cycles for a program
CPU clock cycles = Instruction count CPI
CPI =
Instruction count
IPC: Average number of instructions that CPU time = Instruction count CPI
can be finished in one cycle cycle time
Instruction count
IPC =
CPU clock cycles for a program
21 22
23 24
6
Dependability
Dependability Example
Module reliability A disk system System MTTF
Mean time to failure (MTTF) 10 disks, each 1M-hour Failure _ rate
Mean time to repair (MTTR) MTTF = 10
1
+
1
+
1
+
1
+
1
Mean time between failures (MTBF) 1 ATA controller, 1M 500K 200K 200K 1M
10 + 2 + 5 + 5 +1 23
= MTTF + MTTR 500K-hour MTTF = =
1Mhours 1Mhours
Availability = MTTF / MTBF 1 power supply, 200K- 1 1Mhours
MTTF = =
hour MTTF Failure _ rate 23
1 fan, 200K-hour MTTF = 43.5Khours 5years
1 ATA cable, 1M-hour
MTTF