Measuring Performance and Benchmarks Instructor: Dr. Mike Turi Department of Computer Science and Computer Engineering Pacific Lutheran University Lecture.

Slides:



Advertisements
Similar presentations
TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
Advertisements

Evaluating Performance
Princess Sumaya Univ. Computer Engineering Dept. Chapter 4:
Chapter 1 CSF 2009 Computer Performance. Defining Performance Which airplane has the best performance? Chapter 1 — Computer Abstractions and Technology.
CSCE 212 Chapter 4: Assessing and Understanding Performance Instructor: Jason D. Bakos.
Chapter 4 Assessing and Understanding Performance Bo Cheng.
inst.eecs.berkeley.edu/~cs61c UCB CS61C : Machine Structures Lecture 36 – Performance Every 6 months (Nov/June), the fastest supercomputers.
1 Recap. 2 Measuring Performance  A computer user: response time (execution time).  A computer center manager - throughput - the total amount of work.
Computer ArchitectureFall 2007 © September 17, 2007 Karem Sakallah CS-447– Computer Architecture.
CS/ECE 3330 Computer Architecture Chapter 1 Performance / Power.
Assessing and Understanding Performance B. Ramamurthy Chapter 4.
Chapter 4 Assessing and Understanding Performance
CS61C L39 Performance (1) Garcia, Spring 2007 © UCB Fast CPU!  TRIPS is a UT Austin scaleable architecture with replicated tiles (like in a Bee’s eye).
Fall 2001CS 4471 Chapter 2: Performance CS 447 Jason Bakos.
Lecture 3: Computer Performance
CS430 – Computer Architecture Lecture - Introduction to Performance
1 Chapter 4. 2 Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational motivation.
CMSC 611: Advanced Computer Architecture Benchmarking Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
1 Computer Performance: Metrics, Measurement, & Evaluation.
Where Has This Performance Improvement Come From? Technology –More transistors per chip –Faster logic Machine Organization/Implementation –Deeper pipelines.
Lecture 2: Computer Performance
inst.eecs.berkeley.edu/~cs61c UCB CS61C : Machine Structures Lecture 38 – Performance Every 6 months (Nov/June), the fastest supercomputers.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013.
Csci 136 Computer Architecture II – CPU Performance Xiuzhen Cheng
10/19/2015Erkay Savas1 Performance Computer Architecture – CS401 Erkay Savas Sabanci University.
1 CS/EE 362 Hardware Fundamentals Lecture 9 (Chapter 2: Hennessy and Patterson) Winter Quarter 1998 Chris Myers.
Performance.
Computer Performance Computer Engineering Department.
1 CS465 Performance Revisited (Chapter 1) Be able to compare performance of simple system configurations and understand the performance implications of.
1 CS/COE0447 Computer Organization & Assembly Language CHAPTER 4 Assessing and Understanding Performance.
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
CSE2021: Computer Organization Instructor: Dr. Amir Asif Department of Computer Science York University Handout # 2: Measuring Performance Topics: 1. Performance:
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
1 Lecture 2: Performance, MIPS ISA Today’s topics:  Performance equations  MIPS instructions Reminder: canvas and class webpage:
September 10 Performance Read 3.1 through 3.4 for Wednesday Only 3 classes before 1 st Exam!
Lecture 5: 9/10/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
Lec2.1 Computer Architecture Chapter 2 The Role of Performance.
EGRE 426 Computer Organization and Design Chapter 4.
CMSC 611: Advanced Computer Architecture Performance & Benchmarks Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some.
Performance Computer Organization II 1 Computer Science Dept Va Tech January 2009 © McQuain & Ribbens Defining Performance Which airplane has.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
IT 251 Computer Organization and Architecture Performance Chia-Chi Teng.
BITS Pilani, Pilani Campus Today’s Agenda Role of Performance.
CSE 340 Computer Architecture Summer 2016 Understanding Performance.
Lecture 3. Performance Prof. Taeweon Suh Computer Science & Engineering Korea University COSE222, COMP212, CYDF210 Computer Architecture.
BITS Pilani, Pilani Campus Today’s Agenda Role of Performance.
Computer Architecture & Operations I
Morgan Kaufmann Publishers Technology Trends and Performance
Computer Architecture & Operations I
Computer Architecture & Operations I
CS161 – Design and Architecture of Computer Systems
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
September 2 Performance Read 3.1 through 3.4 for Tuesday
Defining Performance Which airplane has the best performance?
Computer Architecture & Operations I
Morgan Kaufmann Publishers
CSCE 212 Chapter 4: Assessing and Understanding Performance
Chapter 1 Computer Abstractions & Technology Performance Evaluation
Computer Performance He said, to speed things up we need to squeeze the clock.
Computer Architecture
Performance of computer systems
Performance of computer systems
Performance of computer systems
Parameters that affect it How to improve it and by how much
Performance.
Chapter 2: Performance CS 447 Jason Bakos Fall 2001 CS 447.
CS161 – Design and Architecture of Computer Systems
Computer Organization and Design Chapter 4
Presentation transcript:

Measuring Performance and Benchmarks Instructor: Dr. Mike Turi Department of Computer Science and Computer Engineering Pacific Lutheran University Lecture slides adapted from Part 19, EE 334 Dr. Valeriu Beiu (Washington State University) Spring 2005

Why is Measuring Performance Important? When purchasing/upgrading a computer: ▫Best Performance? ▫Least Cost? ▫Best Performance/Cost? When a computer designer is faced with design options: ▫Best Performance Improvement? ▫Least Cost? ▫Best Performance/Cost? 2

How to Define “Performance” Which has higher performance? ▫Time to deliver 1 passenger? ▫Time to deliver 400 passengers? 3 Plane DC to Paris Top Speed Passengers Throughput (p x mph) Boeing hours 610 mph ,700 BAD/Sud Concorde 3 hours 1350 mph ,200

Definitions of Performance Execution Time/Response Time ▫Time between the start and completion of a task Throughput/Bandwidth ▫Total amount of work/tasks done in a given time 4

Relative Performance Performance = 1 / Execution_Time ▫Execution_Time = seconds per program A is n times faster than B ▫A is n times as fast as B ▫PerformanceA / PerformanceB = n If A is n times faster than B, then the execution time on B is n times longer than it is on A ▫Execution_TimeB / Execution_TimeA = n 5

CPU Execution Time/CPU Time The time the CPU spends computing a task – Does not include time waiting for I/O or running other programs User CPU Time – CPU time spent in program System CPU Time – CPU time spent in OS performing tasks on behalf of the program Differentiating User and System CPU Time can be difficult 6

How to Measure Time? Seconds, minutes, hours, etc. Count the number of clock cycles that elapse ▫Computers constructed using a clock that runs at a constant rate 7

The Clock Clock Cycle/Clocks/Cycles – Discrete time intervals that determine when events take place in the hardware Clock Period/Clock Cycle Time – The time for a complete clock cycle (e.g. 400 ps) Clock Rate/Clock Frequency – Inverse of Clock Period (e.g. 2.5 GHz) CPU Execution Time for a program = – CPU clock cycles for a program × Clock cycle time – CPU clock cycles for a program / Clock rate 8

Clock Cycles per Instruction (CPI) Average clock cycles per instruction CPU Clock Cycles = Instr. for a program × CPI Instruction Count ▫The number of instructions executed by a program ▫CPU Time = Instruction count × CPI × Clock cycle time ▫CPU Time = Instruction count × CPI / Clock rate 9

Performance is impacted by… Performance is: ▫Instruction count ▫CPI ▫Clock rate Algorithm Programming language Compiler ISA 10

Performance using MIPS MIPS = Million Instructions per Second ▫MIPS = Instruction Count / (Execution Time × 10 6 ) Problems ▫Cannot compare computers with different instruction sets ▫MIPS varies between programs on the same computer ▫MIPS can vary independently of performance  If a computer executes more instructions, but each instruction is faster 11

Amdahl’s Law The performance enhancement possible with a given improvement is limited by the amount that the improved feature is used ▫Diminishing returns Make the common case fast 12

Speedup Speedup due to enhancement “E” ▫Speedup =Exec_Time (old) Exec_Time (w/o E) = Exec_Time (new) Exec_Time (w/E) ▫Speedup = Performance (new) Performance (w/E) = Performance (old) Performance (w/o E) 13

Choosing which Programs to use to Measure Performance Ideally run typical programs with typical input before purchase or building the machine ▫Called a workload; For example: ▫Engineer uses compiler, spreadsheet ▫Author uses word processor, drawing program, compression software In some situations it’s hard to do ▫Don’t have access to machine to benchmark before purchase ▫Don’t know workload in future 14

Benchmarks Apparent speed of processor depends on code used to test it Need industry standards so that different processors can be fairly compared Companies exist that create these benchmarks: “typical” code used to evaluate systems Need to be changed every 2 or 3 years since designers could (and do!) target for these standard benchmarks Also have benchmarks for power (active and idle) 15

Standardized Benchmarks Example: Standard Performance Evaluation Corporation (SPEC) One benchmark set: SPEC CPU ▫Benchmark suites for wide range of hardware ▫Workloads from real user applications ▫12 integer benchmark tests ▫19 floating point benchmark tests ▫History of SPEC CPU:  CPU92, CPU95, CPU2000, CPU

CINT2006 (Integer Component) (programs written in C or C++) Perl Bzip (compression) GCC (C compiler) mcf (schedules public transportation) gobmk (AI plays a game of Go) hmmer (search gene sequence) sjeng (AI plays chess) libquantum (simulates a quantum computer) H.264/AVC (video compression) OMNet++ (model large Ethernet campus network) astar (path-finding algorithms) XML processing 17

CFP2006 (Floating Point Component) (programs written in Fortran or C/C++) Fluid Dynamics Quantum Chemistry Physics Molecular Dynamics General Relativity Finite Element Analysis Linear Programming Image Ray-Tracing Structural Mechanics Computational Electromagnetics Weather Speech Recognition 18

Test Your Knowledge (True/False) 1.Clock rate does not equal performance 2.A program runs in 100 sec. on a machine, mult accounts for 80 sec. of that. If we want to make the program run 6 times faster, we need to increase the speed of mult’s by AT LEAST 6. 3.Benchmarks cannot change since they are used to measure and compare computer performance among many manufacturers 19

The Megahertz Myth Apple G4 vs. Intel Pentium 4 ▫867 MHz vs. 1.7 GHz ▫Which performs better? See link below: ▫ qchttp:// qc 20