1 Measuring Performance Chris Clack B261 Systems Architecture.

Slides:



Advertisements
Similar presentations
Performance What differences do we see in performance? Almost all computers operate correctly (within reason) Most computers implement useful operations.
Advertisements

Performance Evaluation of Architectures Vittorio Zaccaria.
TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
Evaluating Performance
100 Performance ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.
2-1 ECE 361 ECE C61 Computer Architecture Lecture 2 – performance Prof. Alok N. Choudhary
Computer Organization and Architecture 18 th March, 2008.
CSCE 212 Chapter 4: Assessing and Understanding Performance Instructor: Jason D. Bakos.
ENGS 116 Lecture 21 Performance and Quantitative Principles Vincent H. Berk September 26 th, 2008 Reading for today: Chapter , Amdahl article.
Chapter 4 Assessing and Understanding Performance Bo Cheng.
CIS629 Fall Lecture Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two important.
Performance D. A. Patterson and J. L. Hennessey, Computer Organization & Design: The Hardware Software Interface, Morgan Kauffman, second edition 1998.
CIS429.S00: Lec2- 1 Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two important quantitative.
Computer Architecture Lecture 2 Instruction Set Principles.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.1 Introduction.
Chapter 4 Assessing and Understanding Performance
Fall 2001CS 4471 Chapter 2: Performance CS 447 Jason Bakos.
Lecture 3: Computer Performance
CIS429/529 Winter 07 - Performance - 1 Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two.
1 Chapter 4. 2 Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational motivation.
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
Lecture 2b: Performance Metrics. Performance Metrics Measurable characteristics of a computer system: Count of an event Duration of a time interval Size.
Copyright 1995 by Coherence LTD., all rights reserved (Revised: Oct 97 by Rafi Lohev, Oct 99 by Yair Wiseman, Sep 04 Oren Kapah) IBM י ב מ 7-1 Measuring.
1 CHAPTER 2 THE ROLE OF PERFORMANCE. 2 Performance Measure, Report, and Summarize Make intelligent choices Why is some hardware better than others for.
CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013.
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.
1 Acknowledgements Class notes based upon Patterson & Hennessy: Book & Lecture Notes Patterson’s 1997 course notes (U.C. Berkeley CS 152, 1997) Tom Fountain.
Performance.
Computer Organization and Architecture Tutorial 1 Kenneth Lee.
1 CS465 Performance Revisited (Chapter 1) Be able to compare performance of simple system configurations and understand the performance implications of.
Computer Architecture
Performance – Last Lecture Bottom line performance measure is time Performance A = 1/Execution Time A Comparing Performance N = Performance A / 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.
Performance Enhancement. Performance Enhancement Calculations: Amdahl's Law The performance enhancement possible due to a given design improvement is.
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
Performance Performance
TEST 1 – Tuesday March 3 Lectures 1 - 8, Ch 1,2 HW Due Feb 24 –1.4.1 p.60 –1.4.4 p.60 –1.4.6 p.60 –1.5.2 p –1.5.4 p.61 –1.5.5 p.61.
September 10 Performance Read 3.1 through 3.4 for Wednesday Only 3 classes before 1 st Exam!
Performance – Last Lecture Bottom line performance measure is time Performance A = 1/Execution Time A Comparing Performance N = Performance A / Performance.
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.
Computer Engineering Rabie A. Ramadan Lecture 2. Table of Contents 2 Architecture Development and Styles Performance Measures Amdahl’s Law.
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.
Jan. 5, 2000Systems Architecture II1 Machine Organization (CS 570) Lecture 2: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed. Oct. 4,
Computer Architecture CSE 3322 Web Site crystal.uta.edu/~jpatters/cse3322 Send to Pramod Kumar, with the names and s.
CSE 340 Computer Architecture Summer 2016 Understanding Performance.
Lecture 3. Performance Prof. Taeweon Suh Computer Science & Engineering Korea University COSE222, COMP212, CYDF210 Computer Architecture.
Performance. Moore's Law Moore's Law Related Curves.
CpE 442 Introduction to Computer Architecture The Role of Performance
Computer Architecture & Operations I
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?
CSCE 212 Chapter 4: Assessing and Understanding Performance
CS2100 Computer Organisation
Performance of computer systems
Morgan Kaufmann Publishers Computer Performance
Performance Cycle time of a computer CPU speed speed = 1 / cycle time
Performance of computer systems
Parameters that affect it How to improve it and by how much
Chapter 2: Performance CS 447 Jason Bakos Fall 2001 CS 447.
Computer Organization and Design Chapter 4
CSE 102 Introduction to Computer Engineering
CS2100 Computer Organisation
Presentation transcript:

1 Measuring Performance Chris Clack B261 Systems Architecture

2 Outline Why measure performance? Characterising performance Performance and speed Basic terminology for measuring Performance and Execution Time

3 Why Measure Performance? SO THAT YOU KNOW WHAT YOU’RE SUPPOSED TO BE GETTING! So that you can compare systems! So that you can know if the machine can do its tasks.

4 Characterising Performance Not always obvious how to characterise performance: motor cars football teams tennis players computers? Can lead to serious errors improve the processor to improve speed?

5 Performance and Speed Performance for a program on a particular machine X is n times faster than Y

6 Measuring Time Execution time is the amount of time it takes the program to execute in seconds. Time (computers do several tasks!) elapsed time based on a normal clock; CPU time is time spent executing this program excluding waiting for I/O, or other programs

7 Execution Time Elapsed Time (real time) I/O waiting & other programs CPU time for this program user (direct) system (time in OS) Example (UNIX) u 8.659s 10: % (user) (system) (elapsed) (seconds) (seconds) (min:secs) CPU time = 3.0% of elapsed time

8 Measuring Amounts 1 bit 8 bits = 1 byte 1024bytes = 1 kilobyte = 1KByte = 1K = KBytes = 1 megabyte = 1MB = MB = 1 gigabyte = 1GB = GB = 1 terrabyte = 2 40 and on to infinity Aside - 1 decade ago my home computer had 32K memory. Today it has 32MB, and needs to be upgraded to at least 64MB!

9 Measuring Times Duration 1 second 1/1000 second = 1 millisec = 1ms = s 1/1,000,000 s = 1 microsec = s 1/1,000,000,000s = 1 nanosec = s Frequency 1 Herz = 1 cycle per second 1 MHz = 1,000,000 cycles per sec 100MHz = 100,000,000 cycles per sec.

10 Computer Clock Times Computers run according to a clock that runs at a steady rate The time interval is called a clock cycle (eg, 10ns). The clock rate is the reciprocal of clock cycle - a frequency, how many cycles per sec (eg, 100MHz). 10 ns = 1/100,000,000 (clock cycle), same as:- 1/10ns = 100,000,000 = 100MHz (clock rate).

11 Purchasing Decision Computer A has a 100MHz processor Computer B has a 300MHz processor So, B is faster, right? WRONG! Now, let’s get it right…..

12 Measuring Performance The only important question: “HOW FAST WILL MY PROGRAM RUN?” CPU execution time for a program = CPU clock cycles * cycle time (= CPU clock cycles/Clock rate) In computer design, trade-off between: clock cycle time, and number of cycles required for a program

13 Cycles Per Instruction The execution time of a program clearly must depend on the number of instructions but different instructions take different times An expression that includes this is:- CPU clock cycles = N * CPI N = number of instructions CPI = average clock cycles per instruction

14 Example Machine A clock cycle time 10ns/cycle CPI = 2.0 for prog X Machine B clock cycle time 30ns/cycle CPI = 0.5 for prog X Let I = number of instructions in the program. CPU clock cycles (A) = I * 2.0 CPU time (A)= CPU clock cycles * clock cycle time = I * 2.0 * 10 = I * 20 ns CPU clock cycles (B) = I * 0.5 CPU time (B)= CPU clock cycles * clock cycle time = I * 0.5 * 30 = I * 15 ns

15 Basic Performance Equation CPU Time = I * CPI * T I = number of instructions in program CPI = average cycles per instruction T = clock cycle time CPU Time = I * CPI / R R = 1/T the clock rate T or R are usually published as performance measures for a processor I requires special profiling software CPI depends on many factors (including memory).

16 Other “tricks of the trade” MIPS Million Instructions Per Second MFLOPS Million Floating Point Operations Per Second Benchmarks: SPECs Average Performance over a set of example programs Are any of these accurate? or even useful?

Marketing Metrics (Patterson) MIPS= Instruction Count / Time * 10^6 = Clock Rate / CPI * 10^6 machines with different instruction sets ? programs with different instruction mixes ? dynamic frequency of instructions uncorrelated with performance MFLOP/S= FP Operations / Time * 10^6 machine dependent often not where time is spent

Amdahl's Law Speedup due to enhancement E: ExTime w/o E Performance w/ E Speedup(E) = = ExTime w/ E Performance w/o E Suppose that enhancement E accelerates a fraction F of the task by a factor S and the remainder of the task is unaffected then, ExTime(with E) = ((1-F) + F/S) X ExTime(without E) Speedup(with E) = ExTime(without E) ÷ ((1-F) + F/S) X ExTime(without E)

19 Summary Dealt with issues of measuring performance Considered terminology for measuring performance bits bytes megabytes nanoseconds MHz Seen the basic formulae for execution time.