Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.

Slides:



Advertisements
Similar presentations
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
Advertisements

Computer Abstractions and Technology
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.
Performance D. A. Patterson and J. L. Hennessey, Computer Organization & Design: The Hardware Software Interface, Morgan Kauffman, second edition 1998.
CS/ECE 3330 Computer Architecture Chapter 1 Performance / Power.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
Chapter 4 Assessing and Understanding Performance
Lecture 3: Computer Performance
Introduction to Computer Architecture SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING SUMMER 2015 RAMYAR SAEEDI.
1 Computer Performance: Metrics, Measurement, & Evaluation.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology.
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
Chapter 1 - The Computer Revolution Chapter 1 — Computer Abstractions and Technology — 1  Progress in computer technology  Underpinned by Moore’s Law.
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.
1 CS/EE 362 Hardware Fundamentals Lecture 9 (Chapter 2: Hennessy and Patterson) Winter Quarter 1998 Chris Myers.
Chapter 1 — Computer Abstractions and Technology — 1 Understanding Performance Algorithm Determines number of operations executed Programming language,
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
Chapter 1 Technology Trends and Performance. Chapter 1 — Computer Abstractions and Technology — 2 Technology Trends Electronics technology continues to.
Morgan Kaufmann Publishers
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
4. Performance 4.1 Introduction 4.2 CPU Performance and Its Factors
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /03/2013 Lecture 3: Computer Performance Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER SCIENCE.
Chapter 1 — Computer Abstractions and Technology — 1 Uniprocessor Performance Constrained by power, instruction-level parallelism, memory latency.
Introduction Computer Organization Spring 1436/37H (2015/16G) Dr. Mohammed Sinky Computer Architecture
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.
Chapter 1 Performance & Technology Trends. Outline What is computer architecture? Performance What is performance: latency (response time), throughput.
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.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology.
Computer Architecture & Operations I
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Technology Trends and Performance
Measuring Performance II and Logic Design
Morgan Kaufmann Publishers Computer Abstractions and Technology
Computer Architecture & Operations I
Computer Architecture & Operations I
CS161 – Design and Architecture of Computer Systems
CS161 – Design and Architecture of Computer Systems
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Architecture
Defining Performance Which airplane has the best performance?
Computer Architecture & Operations I
Morgan Kaufmann Publishers Computer Abstractions and Technology
Uniprocessor Performance
Prof. Hsien-Hsin Sean Lee
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers
Morgan Kaufmann Publishers Computer Abstractions and Technology
COSC 3406: Computer Organization
CSCE 212 Chapter 4: Assessing and Understanding Performance
CS2100 Computer Organisation
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Abstractions and Technology
Chapter 1 Computer Abstractions & Technology Performance Evaluation
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Performance
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Abstractions and Technology
Morgan Kaufmann Publishers Computer Abstractions and Technology
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CS161 – Design and Architecture of Computer Systems
Computer Organization and Design Chapter 4
Computer Abstractions and Technology
CS2100 Computer Organisation
Presentation transcript:

Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili

Reading Section 1.4

Morgan Kaufmann Publishers May 19, 2018 Defining Performance Which airplane has the best performance? Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 Performance Response time (latency) How long it takes to do a task Throughput Total work done per unit time e.g., tasks/transactions/… per hour Recall pipeline throughput vs. latency Energy/Power Measure of work being performed Increases with clock frequency/voltage Determines temperature We will deal with this later…… Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 Relative Performance Define Performance = 1/Execution Time “X is n time faster than Y” Example: time taken to run a program 10s on A, 15s on B Execution TimeB / Execution TimeA = 15s / 10s = 1.5 So A is 1.5 times faster than B Chapter 1 — Computer Abstractions and Technology

Measuring Execution Time Morgan Kaufmann Publishers May 19, 2018 Measuring Execution Time Elapsed time Total response time, including all aspects Processing, I/O, OS overhead, idle time Determines system performance CPU time Time spent processing a given job Discounts I/O time, other jobs’ shares Comprises user CPU time and system CPU time Different programs are affected differently by CPU and system performance Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 CPU Clocking Operation of digital hardware governed by a constant-rate clock Our pipeline cycle time Clock period Clock (cycles) Data transfer and computation Update state Clock period: duration of a clock cycle e.g., 250ps = 0.25ns = 250×10–12s Clock frequency (rate): cycles per second e.g., 4.0GHz = 4000MHz = 4.0×109Hz Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 CPU Time Performance improved by Reducing number of clock cycles Increasing clock rate Hardware designer must often trade off clock rate against cycle count Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 CPU Time Example Computer A: 2GHz clock, 10s CPU time Designing Computer B Aim for 6s CPU time Can do faster clock, but causes 1.2 × clock cycles How fast must Computer B clock be? Chapter 1 — Computer Abstractions and Technology

Instruction Count and CPI Morgan Kaufmann Publishers May 19, 2018 Instruction Count and CPI Instruction Count for a program Determined by program, ISA and compiler Average cycles per instruction Determined by CPU hardware If different instructions have different CPI Average CPI affected by instruction mix Chapter 1 — Computer Abstractions and Technology

Cycles and Instructions time Multiplication takes more time than addition Floating point operations take longer than integer ones Accessing memory takes (in general) more time than accessing registers Important point: changing the cycle time often changes the number of cycles required for various instructions (more later)

Program Execution time Number of instruction classes ~= Instruction_count * CPIavg * clock_cycle_time technology algorithms/compiler architecture Relative frequency

Morgan Kaufmann Publishers May 19, 2018 CPI Example Computer A: Cycle Time = 250ps, CPI = 2.0 Computer B: Cycle Time = 500ps, CPI = 1.2 Same ISA Which is faster, and by how much? A is faster… …by this much Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 CPI Example Alternative compiled code sequences using instructions in classes A, B, C Class A B C CPI for class 1 2 3 IC in sequence 1 IC in sequence 2 4 Sequence 1: IC = 5 Clock Cycles = 2×1 + 1×2 + 2×3 = 10 Avg. CPI = 10/5 = 2.0 Sequence 2: IC = 6 Clock Cycles = 4×1 + 1×2 + 1×3 = 9 Avg. CPI = 9/6 = 1.5 Chapter 1 — Computer Abstractions and Technology

Assessing Performance Ideal CPI is increased by dependencies Performance impact on CPI can be assessed by computing the impact on a per instruction basis Increase in CPI = Base CPI + Probability_of_event * penalty_for_event For example, an event may be a branch misprediction or the occurrence of a data hazard The probability is computed for the occurrence of the event on an instruction Examples: pipelined processors

Morgan Kaufmann Publishers May 19, 2018 Performance Summary The BIG Picture Performance depends on Algorithm: affects IC, possibly CPI Programming language: affects IC, CPI Compiler: affects IC, CPI Instruction set architecture: affects IC, CPI, Tc Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 SPEC CPU Benchmark 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) Chapter 1 — Computer Abstractions and Technology

Morgan Kaufmann Publishers May 19, 2018 Pitfall: Amdahl’s Law Improving an aspect of a computer and expecting a proportional improvement in overall performance Example: multiply accounts for 80s/100s How much improvement in multiply performance to get 5× overall? Can’t be done! Corollary: make the common case fast Chapter 1 — Computer Abstractions and Technology

Amdahl’s Law f (1 - f) (1 - f) f / P Speed-up = Perfnew / Perfold =Exec_timeold / Exec_timenew = Performance improvement from using faster mode is limited by the fraction the faster mode can be applied. affected f (1 - f) Told (1 - f) Tnew f / P

Morgan Kaufmann Publishers May 19, 2018 Concluding Remarks Cost/performance is improving Due to underlying technology development Hierarchical layers of abstraction In both hardware and software Instruction set architecture The hardware/software interface Execution time: the best performance measure Power is a limiting factor Use parallelism to improve performance Chapter 1 — Computer Abstractions and Technology

Study Guide Practice problems provided in the class website