Computer Performance Computer Engineering Department.

Slides:



Advertisements
Similar presentations
CS1104: Computer Organisation School of Computing National University of Singapore.
Advertisements

TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
100 Performance ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.
Chapter 4 Assessing and Understanding Performance Bo Cheng.
Computer ArchitectureFall 2007 © September 17, 2007 Karem Sakallah CS-447– Computer Architecture.
1  1998 Morgan Kaufmann Publishers and UCB Performance CEG3420 Computer Design Lecture 3.
Assessing and Understanding Performance B. Ramamurthy Chapter 4.
Computer Architecture Lecture 2 Instruction Set Principles.
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
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.
Princess Sumaya Univ. Computer Engineering Dept. د. بســام كحـالــه Dr. Bassam Kahhaleh.
ECE 4436ECE 5367 Introduction to Computer Architecture and Design Ji Chen Section : T TH 1:00PM – 2:30PM Prerequisites: ECE 4436.
1 Computer Performance: Metrics, Measurement, & Evaluation.
Gary MarsdenSlide 1University of Cape Town Computer Architecture – Introduction Andrew Hutchinson & Gary Marsden (me) ( ) 2005.
Lecture 2: Computer Performance
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
1 CHAPTER 2 THE ROLE OF PERFORMANCE. 2 Performance Measure, Report, and Summarize Make intelligent choices Why is some hardware better than others for.
Performance Chapter 4 P&H. Introduction How does one measure report and summarise performance? Complexity of modern systems make it very more difficult.
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.
B0111 Performance Anxiety ENGR xD52 Eric VanWyk Fall 2012.
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.
1 CS/COE0447 Computer Organization & Assembly Language CHAPTER 4 Assessing and Understanding Performance.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
EEL5708/Bölöni Lec 1.1 August 21, 2006 Lotzi Bölöni Fall 2006 EEL 5708 High Performance Computer Architecture Lecture 1 Introduction.
Morgan Kaufmann Publishers
1  1998 Morgan Kaufmann Publishers How to measure, report, and summarize performance (suorituskyky, tehokkuus)? What factors determine the performance.
Performance Performance
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.
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.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
EEL-4713 Ann Gordon-Ross.1 EEL-4713 Computer Architecture 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.
Measuring Performance and Benchmarks Instructor: Dr. Mike Turi Department of Computer Science and Computer Engineering Pacific Lutheran University Lecture.
CPEN Digital System Design Assessing and Understanding CPU Performance © Logic and Computer Design Fundamentals, 4 rd Ed., Mano Prentice Hall © Computer.
Performance. Moore's Law Moore's Law Related Curves.
Lecture 2: Performance Evaluation
Computer Architecture & Operations I
How do we evaluate computer architectures?
Defining Performance Which airplane has the best performance?
Computer Architecture & Operations I
Morgan Kaufmann Publishers
Computer Architecture CSCE 350
CS2100 Computer Organisation
Computer Architecture
Morgan Kaufmann Publishers Computer Performance
Arrays versus Pointers
Parameters that affect it How to improve it and by how much
Performance.
Chapter 2: Performance CS 447 Jason Bakos Fall 2001 CS 447.
Computer Organization and Design Chapter 4
CS2100 Computer Organisation
Presentation transcript:

Computer Performance Computer Engineering Department

What is Performance? Performance can be judged from several perspectives and with several metrics!  Purchasing perspective - given a collection of machines, which has the  best performance?  lowest cost?  best performance/cost ratio?

 Design perspective - faced with design options, which has the  best performance improvement?  least cost?  best performance improvement/cost of improvement?  Our goal is to understand cost & performance implications of computer architectural choices What is Performance?

PlaneDC to ParisSpeedPassengers Throughput (p x mph) Boeing hours610 mph470286,700Airbus hours560 mph555310,800 Which has higher performance – a Boeing 747 or a Airbus 380? Two notions of Performance

 Time of A380 vs. Boeing 747? A380 is 560 mph / 610 mph =.91 times slower  Throughput of A380 vs. Boeing 747 ? A380 is 310,800 pmph / 286,700 pmph = 1.08 “times faster”  A380 is 8% faster in terms of throughput  Boeing is 9%” faster in terms of flying time

 Server Performance is units of things-per-second (throughput)  bigger number is better  If we say “X is n times faster than Y it means Performance(X)/Performance(Y) = n  Embedded systems: hard real-time constraint and soft real time constraint  Desktop systems we focus on the execution time for a single job  We are primarily concerned with response time Execution time (X) = ______1_________ Performance (X) - smaller number is better Definitions

 Relative performance compares one computer vs. another.  Performance A = Execution time B = n Performance B Execution time A  If we look at response time to execute an application and Computer A finishes faster we can say  “Computer A is 3 times faster than Computer B” which means Execution time B = 3 or Performance A = 3 Execution time A Performance B  Or Performance A = 3 (Performance B)  However, one application does not run exclusevly on the CPU… Comparing Performance

CPU Performance  The elapsed time or “execution time” groups times needed to perform the application while the CPU is multiplexing between tasks.  The Execution time = CPU time + Access time + Overhead  Example  CPU time is 10 sec for the program + 2 sec system time, and the total elapsed time is 40 sec  then CPU time is 12/40 or 33% of the execution time.  the rest (66%) is spent for Input/Output (I/O) and other programs.

CPU Performance  For a hardware designer, the bottom line is CPU time  CPU time = Seconds which can also be written as Program  CPU time = # Clock cycles for a program Clock frequency (GHz)  The #clock cycles for a program depends on its size (how many instructions is has – or Instruction Count ), as well as on the average number of clock cycles it takes to execute a single instruction (or CPI ).

Average Cycles Per Instruction  Programs have different kinds of instructions.  Some (like those involving memory access lw, sw) take more cycles to execute.  Others, like add are faster, and take less cycles to execute.  We look at the Instruction Frequency F i = Number of instruction of type i Program Instruction Count  Note – F i is program dependent! (will influence MIPS) Then CPI = Σ CPI i x F i i=1 n

CPU time= Seconds= Instructions x Cycles x Seconds Program Program Instruction Cycle CPU time= Seconds= Instructions x Cycles x Seconds Program Program Instruction Cycle instr. count CPIclock rate Program Compiler Instr. Set Arch. Organization Technology CPU Performance

CPU time= Seconds= Instructions x Cycles x Seconds Program Program Instruction Cycle CPU time= Seconds= Instructions x Cycles x Seconds Program Program Instruction Cycle instr. count CPIclock rate Program X X Compiler X X Instr. Set X X Arch. Organization X X Technology X CPU Performance

Million Instructions Per Second (MIPS)  Another way to measure performance  It is defining speed of execution – faster machines have higher MIPS  We define it as MIPS = Instruction Count x Execution time (sec)  Example Two 5 GHz computers with the same architecture use different compilers. They have Instruction Class CPI i A 2 B 1 C 4

Million Instructions Per Second (MIPS) The compilers affect the Instruction Count for each class Code from Instruction Count C i for each Class (10 9 ) A B C Compiler Compiler The # CPU cycles= Σ CPI i x C i (how many in instruction of class i are in the program) So # CPU cycles for Machine 1 = (5x2+1x1+2x4) 10 9 = 19 x10 9 and # CPU cycles for Machine 2 = (10x2+1x1+2x4) 10 9 = 29 x 10 9 The Execution time for Machine 1 = #CPU cycles/clock frequency = (19 x 10 9 )/5 x10 9 = 3.8 sec The Execution time for Machine 2 = (29 x 10 9 )/5x10 9 = 5.8 sec

Million Instructions Per Second (MIPS) So Machine 1 has better performance (it takes less time to execute the program). MIPS as measure of performance= Instruction Count x10 -6 Execution time MIPS for Machine “1” = (5+1+2) 10 9 = 2,100 MIPS 3.8 x10 6 MIPS for Machine “2 “= (10+1+2) 10 9 = 2,241 MIPS 5.8 x10 6 So Machine 2 has higher MIPS! – MIPS depends on the Instruction Count (which depends on the compiler) – there will be different MIPS on a single machine – less used these days.

The End