Power calculation for transistor operation What will cause power consumption to increase? CS2710 Computer Organization1
2 Measuring the current used by the Atmega microprocessor shows a linear relationship Note: V=5v for in this case
CS2710 Computer Organization3 What effect does increasing voltage to a microprocessor have on power? On speed? Below around 2.5v (for this microprocessor), the transistors simply stop working
The Power Wall: Why haven’t clock rates continued to increase at historical rates? CS2710 Computer Organization4
Manufacturers have turned to multi-core architectures to bypass the Power Wall CS2710 Computer Organization5 Clock speed decrease, but overall performance increase
Lecture Objectives: 1)Explain the SPEC benchmarks. 2)Define Amdahl's law 3)Define MIPS
Amdahl’s Law (p51) The performance enhancement possible with a given improvement is limited by the amount that the improved feature is used CS2710 Computer Organization7
Amdahl’s Law Applied A Program spends 40 seconds performing network transfers and 60 seconds generating reports. – Suppose we could rewrite the report generator to make it more efficient. – What improvement in performance in the report generator would be necessary to increase the overall speed of the program by a factor of 2? – How about by a factor of 3? CS2710 Computer Organization8
A Performance Metric: MIPS Units: millions of instructions per second CS2710 Computer Organization9
Issues with MIPS metrics 1.Measures instruction execution rate, but doesn’t consider the complexity of the instructions performed 2.Average instruction complexity varies between programs executing on a single computer 3.Different microprocessors implement instructions of differing complexities MIPS may vary independently from performance We cannot compare computers with different instruction sets using MIPS! CS2710 Computer Organization10
Benchmarking: How do you decide which computer to buy? CS2710 Computer Organization11
SPEC Benchmark A set of programs used to measure performance – Supposedly typical of actual workload Standard Performance Evaluation Corp (SPEC) – Develops benchmarks for CPU, I/O, Web, … SPEC CPU2006 – Elapsed time to execute a selection of programs Negligible I/O, so focuses on CPU performance – Normalize relative to reference machine – Summarize as geometric mean of performance ratios CINT2006 (integer) and CFP2006 (floating-point) CS2710 Computer Organization12
Geometric vs. Arithmetic Mean Arithmetic mean: Geometric mean: CS2710 Computer Organization13
Which computer has better overall performance? CS2710 Computer Organization14 Computer AComputer BComputer C Program Program
Which computer has better overall performance? CS2710 Computer Organization15 Computer AComputer BComputer C Program Program Arithmetic mean Geometric mean A is fastest via Arithmetic mean. A and B are tied via Geometric mean. Geometric mean is the appropriate mean when the ranges of the values being compared vary significantly.
Benchmarking often computes performance relative to a standard reference CS2710 Computer Organization16 Computer AComputer BComputer C Program Program Computer A (reference) Computer BComputer C Program Program Scaling the results in this manner is called normalization. Note that no normalization was needed for Program 1 since the reference computer’s value was already 1. Let’s say A is the “reference” computer. We adjust all performance values by dividing each value by the reference computer’s value. In this example, we divide all results for Program 2 by the reference computer’s performance value of 1000, giving:
Arithmetic and Geometric means based on the normalized values: Computer AComputer BComputer C Program Program Arithmetic mean Geometric mean CS2710 Computer Organization17 Now C is fastest via Arithmetic mean! A and B are still tied via Geometric mean.
Now consider computer B to be the “reference” computer and normalize A and C w.r.t. B CS2710 Computer Organization18 Now A is fastest via Arithmetic mean! A and B are still tied via Geometric mean. The Geometric mean is consistent regardless of normalization! Computer A Computer B (reference) Computer C Program Program Arithmetic mean Geometric mean
The SPECjvm2008 application – SPECjvm2008 is a benchmark suite for measuring the performance of a Java Runtime Environment (JRE), containing several real life applications and benchmarks focusing on core java functionality. – The SPECjvm2008 workload mimics a variety of common general purpose application computations. CS2710 Computer Organization19
CINT2006 integer performance benchmarks for the Opteron X CS2710 Computer Organization20 NameDescriptionIC×10 9 CPITc (ns) Exec timeRef timeSPECratio perlInterpreted string processing2, , bzip2Block-sorting compression2, , gccGNU C Compiler1, , mcfCombinatorial optimization ,3459, goGo game (AI)1, , hmmerSearch gene sequence2, , sjengChess game (AI)2, , libquantumQuantum computer simulation1, ,04720, h264avcVideo compression3, , omnetppDiscrete event simulation , astarGames/path finding1, , xalancbmkXML parsing1, ,1436, Geometric mean11.7
SPEC and power: ssj_ops (server-side java operations/sec) Power consumption of server at different workload levels – Performance: ssj_ops/sec – Power: Watts (Joules/sec) CS2710 Computer Organization21
A Power benchmark: SPEC Power versus load SPECpower_ssj2008 for X4 CS2710 Computer Organization22 Target Load %Performance (ssj_ops/sec)Average Power (Watts) 100%231, %211, %185, %163, %140, %118, %920, %70, %47, %23, %0141 Overall sum1,283,5902,605 ∑ssj_ops/ ∑power493
Low power at low usage? No! Look back at X4 power benchmark – At 100% load: 295W – At 50% load: 246W (83%) – At 10% load: 180W (61%) Google data center – Mostly operates at 10% – 50% load – At 100% load less than 1% of the time Future research/development: Design processors to make power proportional to load CS2710 Computer Organization23