measuring performance
play

Measuring Performance November 17, 2008 Measuring Performance - PowerPoint PPT Presentation

Introduction CPU Peformance and Its Factors Evaluating Performance Measuring Performance November 17, 2008 Measuring Performance Introduction CPU Peformance and Its Factors Evaluating Performance Outline 1 Introduction 2 CPU Peformance and


  1. Introduction CPU Peformance and Its Factors Evaluating Performance Measuring Performance November 17, 2008 Measuring Performance

  2. Introduction CPU Peformance and Its Factors Evaluating Performance Outline 1 Introduction 2 CPU Peformance and Its Factors 3 Evaluating Performance Measuring Performance

  3. Introduction CPU Peformance and Its Factors Evaluating Performance Some measures of Peformance High throughput Short respone time Scalability Measuring Performance

  4. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measuring Performance

  5. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measure, evaluate Measuring Performance

  6. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measure, evaluate Tough: complex software + optimized hardware Hardware: CPU: many metrics Measuring Performance

  7. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measure, evaluate Tough: complex software + optimized hardware Hardware: CPU: many metrics Memory Graphics Measuring Performance

  8. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measure, evaluate Tough: complex software + optimized hardware Hardware: CPU: many metrics Memory Graphics Software: needs vary Measuring Performance

  9. Introduction CPU Peformance and Its Factors Evaluating Performance Performance “How fast?” Measure, evaluate Tough: complex software + optimized hardware Hardware: CPU: many metrics Memory Graphics Software: needs vary Consumer: GHz , MB . . . ? Measuring Performance

  10. Introduction CPU Peformance and Its Factors Evaluating Performance Our Concern From inside What determines computer performance? Measuring Performance

  11. Introduction CPU Peformance and Its Factors Evaluating Performance Our Concern From inside What determines computer performance? Answer: Why is a software slow / fast? Why implementations of ISs can perform better / worse? How hardware pieces a ff ect performance? Measuring Performance

  12. Introduction CPU Peformance and Its Factors Evaluating Performance Defining Performance Performance ComputerX > Computer ComputerY Measuring Performance

  13. Introduction CPU Peformance and Its Factors Evaluating Performance Defining Performance Performance ComputerX > Computer ComputerY ? Measuring Performance

  14. Introduction CPU Peformance and Its Factors Evaluating Performance Judging Performance Figure: Statistics of some aircraft models Measuring Performance

  15. Introduction CPU Peformance and Its Factors Evaluating Performance Basic Metrics Response time : time for single task Throughput : amount of work done per unit time Measuring Performance

  16. Introduction CPU Peformance and Its Factors Evaluating Performance Throughput and Response Time Which is improved in these cases: Upgrading to a faster processor? Upgrading to a multi-core processor? Measuring Performance

  17. Introduction CPU Peformance and Its Factors Evaluating Performance Response Time Main metric Measuring Performance

  18. Introduction CPU Peformance and Its Factors Evaluating Performance Response Time Main metric max(Performance) ⇒ min(respTime) Measuring Performance

  19. Introduction CPU Peformance and Its Factors Evaluating Performance Response Time Main metric max(Performance) ⇒ min(respTime) 1 Performance = ExecutionTime Measuring Performance

  20. Introduction CPU Peformance and Its Factors Evaluating Performance Response Time Main metric max(Performance) ⇒ min(respTime) 1 Performance = ExecutionTime ∴ , if Performance X > Performance Y = ⇒ ExecutionTime Y > ExecutionTime X Measuring Performance

  21. Introduction CPU Peformance and Its Factors Evaluating Performance Relative Performance X is n times faster than Y = ⇒ Performance X = ExecutionTime Y = n Performance Y ExecutionTime X Measuring Performance

  22. Introduction CPU Peformance and Its Factors Evaluating Performance Relative Performance X is n times faster than Y = ⇒ Performance X = ExecutionTime Y = n Performance Y ExecutionTime X ∴ , improve performance = ⇒ descrease execution time Measuring Performance

  23. Introduction CPU Peformance and Its Factors Evaluating Performance Measuring Performance Settled on time as metric Execution time / program Measuring Performance

  24. Introduction CPU Peformance and Its Factors Evaluating Performance Measuring Performance Settled on time as metric Execution time / program Formally wall-clock / execution / response time Total time to complete everything for a task (CPU + I / O + Memory + OS + . . . ) Measuring Performance

  25. Introduction CPU Peformance and Its Factors Evaluating Performance CPU Execution Time Often, multi-processing OS ∴ , goal: throughput Measuring Performance

  26. Introduction CPU Peformance and Its Factors Evaluating Performance CPU Execution Time Often, multi-processing OS ∴ , goal: throughput CPU (Execution) time : CPU’s devotion to a single program exclude I / O or other programs Measuring Performance

  27. Introduction CPU Peformance and Its Factors Evaluating Performance CPU Execution Time Often, multi-processing OS ∴ , goal: throughput CPU (Execution) time : CPU’s devotion to a single program exclude I / O or other programs = user CPU time + system CPU time Measuring Performance

  28. Introduction CPU Peformance and Its Factors Evaluating Performance Clock Cycles More precise metric Clock cycles Also, tick, clock tick, period, clock period Measured by a crystal oscillator Clock rate / period Measuring Performance

  29. Introduction CPU Peformance and Its Factors Evaluating Performance Outline 1 Introduction 2 CPU Peformance and Its Factors 3 Evaluating Performance Measuring Performance

  30. Introduction CPU Peformance and Its Factors Evaluating Performance CPU Performance Relate user and designer metrics For a program: CPU Execution time = CPU clock cycles ∗ Clock cycle time = CPU clock cycles Clock rate Execution time: user experience Cycles and clock rate: designer metrics Measuring Performance

  31. Introduction CPU Peformance and Its Factors Evaluating Performance Example Program execution on CPU A (4 GHz) 10 seconds Same program on future CPU B 6 seconds (hopefully) Improved design will cost 1.2 times more cycles for same program ClockSpeed B ? 8 GHz Measuring Performance

  32. Introduction CPU Peformance and Its Factors Evaluating Performance Cycles Per Instruction Relate to number of instructions in program Clock Cycles per Instruction (CPI) average for all instructions examples for some instructions costlier than some others? CPI: Good measure of implementations of same architecture ∴ , for a program: Cycles = No. of instructions × Average CPI Measuring Performance

  33. Introduction CPU Peformance and Its Factors Evaluating Performance Rephrasing the Performance Equation CPU time = Instruction count × CPI × Clock cycle time = Instruction count × CPI Clock rate Measuring Performance

  34. Introduction CPU Peformance and Its Factors Evaluating Performance Measuring the factors CPU time : use a watch Clock rate / period : comes with CPU specs Instructions Count : Software: profilers, hardware simulators Hardware: CPU counters CPI : hardware counters Measuring Performance

  35. Introduction CPU Peformance and Its Factors Evaluating Performance Measuring the factors CPU time : use a watch Clock rate / period : comes with CPU specs Instructions Count : Software: profilers, hardware simulators Hardware: CPU counters CPI : hardware counters No. of cycles � n i = 1 CPI i × C i Measuring Performance

  36. Introduction CPU Peformance and Its Factors Evaluating Performance Component E ff ect on Performance What are the factors that a ff ect performance of a program and on what metrics? Algorithm of the program Measuring Performance

  37. Introduction CPU Peformance and Its Factors Evaluating Performance Component E ff ect on Performance What are the factors that a ff ect performance of a program and on what metrics? Algorithm of the program Instruction count, (possibly) CPI Measuring Performance

  38. Introduction CPU Peformance and Its Factors Evaluating Performance Component E ff ect on Performance What are the factors that a ff ect performance of a program and on what metrics? Algorithm of the program Instruction count, (possibly) CPI Programming language of the program Measuring Performance

  39. Introduction CPU Peformance and Its Factors Evaluating Performance Component E ff ect on Performance What are the factors that a ff ect performance of a program and on what metrics? Algorithm of the program Instruction count, (possibly) CPI Programming language of the program Instruction count, CPI Measuring Performance

  40. Introduction CPU Peformance and Its Factors Evaluating Performance Component E ff ect on Performance What are the factors that a ff ect performance of a program and on what metrics? Algorithm of the program Instruction count, (possibly) CPI Programming language of the program Instruction count, CPI Compiler for the program Measuring Performance

Recommend


More recommend