CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013.

Slides:



Advertisements
Similar presentations
1 Lecture 2: Metrics to Evaluate Performance Topics: Benchmark suites, Performance equation, Summarizing performance with AM, GM, HM Video 1: Using AM.
Advertisements

CMSC 611: Advanced Computer Architecture Performance Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Computer Organization Lab 1 Soufiane berouel. Formulas to Remember CPU Time = CPU Clock Cycles x Clock Cycle Time CPU Clock Cycles = Instruction Count.
TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
ECE 4100/6100 Advanced Computer Architecture Lecture 3 Performance Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering Georgia Institute.
CS 6290 Evaluation & Metrics. Performance Two common measures –Latency (how long to do X) Also called response time and execution time –Throughput (how.
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.
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.
Copyright © 1998 Wanda Kunkle Computer Organization 1 Chapter 2.5 Comparing and Summarizing Performance.
Computer ArchitectureFall 2007 © September 17, 2007 Karem Sakallah CS-447– Computer Architecture.
CS/ECE 3330 Computer Architecture Chapter 1 Performance / Power.
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
1 Lecture 10: FP, Performance Metrics Today’s topics:  IEEE 754 representations  FP arithmetic  Evaluating a system Reminder: assignment 4 due in a.
CIS429/529 Winter 07 - Performance - 1 Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two.
1 Measuring Performance Chris Clack B261 Systems Architecture.
CMSC 611: Advanced Computer Architecture Benchmarking Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Lecture 2: Technology Trends and Performance Evaluation Performance definition, benchmark, summarizing performance, Amdahl’s law, and CPI.
1 Computer Performance: Metrics, Measurement, & Evaluation.
Gary MarsdenSlide 1University of Cape Town Computer Architecture – Introduction Andrew Hutchinson & Gary Marsden (me) ( ) 2005.
Lecture 2b: Performance Metrics. Performance Metrics Measurable characteristics of a computer system: Count of an event Duration of a time interval Size.
Memory/Storage Architecture Lab Computer Architecture Performance.
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.
Performance.
1 CS/COE0447 Computer Organization & Assembly Language CHAPTER 4 Assessing and Understanding Performance.
1 Seoul National University Performance. 2 Performance Example Seoul National University Sonata Boeing 727 Speed 100 km/h 1000km/h Seoul to Pusan 10 hours.
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
Computer Architecture Lecture Notes Spring 2005 Dr. Michael P. Frank Competency Area 2: Performance Metrics Lecture 1.
CET Gannod1 Chapter 1 Fundamentals of Computer Design.
CPU Performance using Different Parameters CS 250: Andrei D. Coronel, MS,CEH,PhD Cand.
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
Performance Performance
1 Lecture 2: Performance, MIPS ISA Today’s topics:  Performance equations  MIPS instructions Reminder: canvas and class webpage:
4. Performance 4.1 Introduction 4.2 CPU Performance and Its Factors
Lecture 5: 9/10/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
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.
Performance COE 301 / ICS 233 Computer Organization Prof. Muhamed Mudawar College of Computer Sciences and Engineering King Fahd University of Petroleum.
Chapter 1 Performance & Technology Trends. Outline What is computer architecture? Performance What is performance: latency (response time), throughput.
CSE 340 Computer Architecture Summer 2016 Understanding Performance.
June 20, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 1: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed.
Performance. Moore's Law Moore's Law Related Curves.
Measuring Performance II and Logic Design
Lecture 2: Performance Today’s topics:
Lecture 2: Performance Evaluation
Computer Architecture & Operations I
CS161 – Design and Architecture of Computer Systems
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
ECE 4100/6100 Advanced Computer Architecture Lecture 1 Performance
Defining Performance Which airplane has the best performance?
Computer Architecture & Operations I
Morgan Kaufmann Publishers
CSCE 212 Chapter 4: Assessing and Understanding Performance
CMSC 611: Advanced Computer Architecture
Performance of computer systems
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
Performance.
Chapter 2: Performance CS 447 Jason Bakos Fall 2001 CS 447.
CS161 – Design and Architecture of Computer Systems
Presentation transcript:

CDA 3101 Fall 2013 Introduction to Computer Organization Computer Performance 28 August 2013

Overview Performance evaluation Limitations Metrics Processor performance equation Performance evaluation reports Amdahl’s law

Performance Evaluation Program Compiler ISA Microarchitecture Hardware Manufacturing

Performance Evaluation Concepts Computer performance evaluation is based on: –Throughput (bits per second) –Response time (a.k.a. execution time, elapsed time) Component- and system-level performance Processor performance evaluation –Based on execution time of a program: Performance X = 1/ Execution time X Relative performance: n = Performance X / Performance Y n > 1 => X is n times faster than Y Terminology –Improve performance = increase performance –Improve execution time = decrease execution time

Example Impact on throughput and response time of: –Using a faster processor Decrease in response time Increase in throughput –Adding more processors to a system Increase in throughput Decrease in response time (if overhead is low) –In Massively Parallel Processors (MPP) –In Symmetric Multiprocessing Processors (SMP) »Only if additional processors reduce queue time

Measuring Performance Components of the execution time of a program: 1.CPU execution time User CPU time System CPU time 2.I/O time 3.Time spent running other programs Unix time command time cc prog.c 9.7u 1.5s 20 56% 9.7u = 9.7 sec User CPU time 1.5s = 1.5 sec System CPU time 20= Total Elapsed Time 56%= Percent CPU time

CPU Performance Equation CPU time = CPU clock cycles * cycle time = CPU clock cycles / clock rate –CPU clock cycles = IC * CPI IC: instruction count (number of instructions per program) CPI: average cycles per instruction CPU time = IC * CPI * cycle time seconds instructions clock cycles seconds program program instruction clock cycle CPU clock cycles = Σ i (CPI i * IC i ) –IC i : count of instructions of class i –CPI i : cycles that takes to execute instructions of class i = **

Scope of Performance Sources Abstraction level interdependence Program Compiler ISA Microarchitecture Hardware CPU time = IC * CPI * Cycle time

Example 1 A program runs in 10 secs on a 2.0 GHz processor. A designer wants to build a new computer that can run the program in 6 secs by increasing the clock frequency. However the average “new” CPI will be 1.2 times higher. What faster clock rate should the designer use? 10 IC * CPI / 2 GHz (current exec. time) 6 IC * 1.2 CPI / X GHz (target execution time) Solve for X, to obtain X = ___ GHz =

Example 2 Comparing two compiler code segments Which code sequence executes the most instructions? Which will be faster? S 1 = = 10 cyc S 2 = = 9 cyc Instruction class iCPI i for instruction class i A1 B 2 C 3 Code sequence Instruction counts (IC i ) for instruction class ABC

Components of the CPU Equation IC Instruction count –Compiler Instruction set simulator Execution-based monitoring (profiling) CPI if pipelined execution is used CPI i = Pipeline CPI i + Memory CPI i Clock cycle time –Timing estimators or verifiers (complete design) –Target cycle time

Performance Evaluation Programs Ideal situation: known programs (workload) Benchmarks –Real programs –Kernels –Toy benchmarks –Synthetic benchmarks Risk: adjust design to benchmark requirements –(partial) solution: use real programs Engineering or scientific applications Software development tools Transaction processing Office applications

Performance Reports Reproducibility –Include hardware / software configuration –Evaluation process conditions Summarizing performance –Total time: CPU time + I/O time + Other time –Arithmetic mean: AM = 1/n * Σ exec time i –Harmonic mean: HM = n / Σ (1/rate i ) –Weighted mean: WM = Σ w i * exec time i –Geometric mean: GM = (Π exec time ratio i ) 1/n GM (X i ) X i GM (Y i ) Y i = Important Stuff

Arithmetic and Geometric Means ABC P P Execution time (in seconds) machines: A, B, and C programs: P1 and P2

Amdahl’s Law Law of diminishing returns Execution time before improvement Execution time after improvement Speedup = 1 (1 - fraction enhanced) + (fraction enhanced/factor of improvement) Speedup = Example: Two factors - F1: 75% improve, F2: 50% improve F1 F2

Example A program runs in 10 seconds What is the speedup after a faster floating point unit is incorporated? Speedup = 1 (1 – Fraction FP) + FractionFP 5 Speedup = FP factor of improvement 0.5 +

Conclusions Many different performance data –CPU time, I/O time, Other time, Total time Select best presentation method –Arithmetic mean for execution times –Geometric mean for performance ratios Watch out for Amdahl’s Law –Diminishing returns w/ improved performance –Impacts of development