EE380, Fall 2010 Hank Dietz http://aggregate.org/hankd/ Chapter 2 EE380, Fall 2010 Hank Dietz http://aggregate.org/hankd/

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

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.
Computer Organization and Architecture 18 th March, 2008.
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.
1 CSE SUNY New Paltz Chapter 2 Performance and Its Measurement.
Performance D. A. Patterson and J. L. Hennessey, Computer Organization & Design: The Hardware Software Interface, Morgan Kauffman, second edition 1998.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.5 Comparing and Summarizing Performance.
CS/ECE 3330 Computer Architecture Chapter 1 Performance / Power.
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
1 Chapter 4. 2 Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational motivation.
1 ECE3055 Computer Architecture and Operating Systems Lecture 2 Performance Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering Georgia.
1 Measuring Performance Chris Clack B261 Systems Architecture.
CPU Performance Assessment As-Bahiya Abu-Samra *Moore’s Law *Clock Speed *Instruction Execution Rate - MIPS - MFLOPS *SPEC Speed Metric *Amdahl’s.
Computer Organization and Design Performance Montek Singh Mon, April 4, 2011 Lecture 13.
1 Computer Performance: Metrics, Measurement, & Evaluation.
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.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
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.
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
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.
Chapter 4. Measure, Report, and Summarize Make intelligent choices See through the marketing hype Understanding underlying organizational aspects Why.
Lec2.1 Computer Architecture Chapter 2 The Role of Performance.
L12 – Performance 1 Comp 411 Computer Performance He said, to speed things up we need to squeeze the clock Study
EGRE 426 Computer Organization and Design Chapter 4.
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 & OPERATIONS I Instructor: Yaohang Li.
Lecture 3. Performance Prof. Taeweon Suh Computer Science & Engineering Korea University COSE222, COMP212, CYDF210 Computer Architecture.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and from the Patterson and Hennessy Text.
Measuring Performance II and Logic Design
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
Performance Performance The CPU Performance Equation:
Defining Performance Which airplane has the best performance?
Computer Architecture & Operations I
Prof. Hsien-Hsin Sean Lee
Morgan Kaufmann Publishers
CSCE 212 Chapter 4: Assessing and Understanding Performance
CS2100 Computer Organisation
Defining Performance Section /14/2018 9:52 PM.
Computer Performance He said, to speed things up we need to squeeze the clock.
CMSC 611: Advanced Computer Architecture
Morgan Kaufmann Publishers Computer Performance
Performance Cycle time of a computer CPU speed speed = 1 / cycle time
CMSC 611: Advanced Computer Architecture
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
Parameters that affect it How to improve it and by how much
Computer Performance Read Chapter 4
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
CS2100 Computer Organisation
Presentation transcript:

EE380, Fall 2010 Hank Dietz http://aggregate.org/hankd/ Chapter 2 EE380, Fall 2010 Hank Dietz http://aggregate.org/hankd/

Why Measure Performance? • Performance is important • Identify HW/SW performance problems • Compare & choose wisely • Which system configuration is better? • Which ISA is better? • Which ISA implementation is better? • Expose significant issues, ignore others

What Does Performance Measure?

Measures of Computer Performance • What to measure? • Execution time for application • Power / temperature / battery life • Reliability / availability • Cost for acceptable functionality • Size • Measure what matters to you...

Measures of Computer Performance • Response Time & Throughput • Time to complete an operation • Jobs completed per unit time • Often can trade one for the other • Performance(X) = 1/ExecutionTime(X) • X is Performance(X)/Performance(Y) times faster than Y, also: ExecutionTime(Y)/ExecutionTime(X)

For Whom The Clock Ticks • Posix uses real, user, system time • Real “Wall Clock” time always ticks • CPU time ticks only when CPU is yours • User time while in your code • System time while in OS code for you • Multiplied by #PEs in multiprocessors • I/O time not reported under Posix

What Is The Clock? • Not as simple as you think... • Used to count AC zero crossings in SW • Legacy of the IBM PC: • Clock chip counts seconds (w/battery) • Counter/timer chip @ 1.193181 MHz • Processor tick count performance register • Borrowed clocks: NTP, PTP, & GPS • Jiffy is system interrupt interval (1-10ms) • Posix counts seconds since 1970, but knows timezones, leaps, etc.

Running What program? • Different program, different performance • Application (all that really matters!) • “Toy” program • Benchmark: representative application • Micro Benchmark: tests a certain feature • Synthetic Benchmark: a program written solely to perform like a particular application, but doing nothing useful • Benchmark Suite: multiple benchmarks

Common Metrics • Application/benchmark time for specific data: e.g.: Quake updates/s • LIPS: Logical Inferences/s • FLOPS: Floating-Point OPerations/s • MB/s, Mb/s: MegaBytes/Megabits per s • MIPS: Millions of Instructions/s • MOPS: “” OPerations/s • Hz: clock cycles/s • CPI: Cycles Per Instruction IPC: Instructions Per Cycle

CPI • Clock ticks at a (mostly) constant rate • Can express program runtime as:

• Programs are made of instructions • Can use CPI to compute: Cycles / Program? • Programs are made of instructions • Can use CPI to compute:

All Instructions Alike? • Different instruction type, different CPI • Can sum over types separately: Σ ( )

Parameters • Instruction types can be “classes” • Instructions / Program • Expected execution counts • % or ratios for relative performance • CPI • Clock period same for everything (analyze separately for each clock rate If the processor dynamically throttles)

An Example • This program takes: ((20*10)+(10*30))*10ns = 5us • What can be changed to make it 4us?

A Little Disclaimer... That CPI analysis assumes sequential execution of instructions, but most modern processors are parallel in various ways... the model is still useful, but approximate, using 1/IPC to approximate CPI; it also works to analyze sequential portions of a design

What Effects What?

What Effects What?

How Does A Change Affect Design? • For a particular application • For a particular compiler • For a particular ISA • For a particular implementation arch. • For a particular VSI technology • Etc.

Amdahl's Law • If 1/N time is not affected by a change, the best possible speedup is only N • Originally for sequential overhead in parallel code, but applies for any change Suppose a program spends 80% of its time doing multiplies... you can't get more than a 5X speedup by improving only multiplies!

A Lesson From Top500.Org

Summary • Most performance numbers not relevant; measure what you care about • Relate performance to causes • Best designs usually make everything (and hence nothing) the bottleneck • Stuff is getting better fast... Don't base design decisions on now, but on when you will need/market it