Measuring Performance By Irfanullah MS (Computer Science)  University Of Peshawar
In  This  Demonstration What is Performance? Performance Measurement Methods MIPS CPI / IPC Choosing Programs to Evaluate Performance Benchmark Suits Speedup Quantitative Principles of Computer Design Future Work
Performance Performance means How quickly a given system executes a program/ a set of programs Two aspects Response Time The time between the start and the completion of an event– execution time. Throughput The total amount of work done in a given time
MIPS Millions of Instructions Per Second An early measure of computer performance. MIPS =  No. of instruction executed in a program Time required to run the program typically expressed in millions of instructions per second. Out Of Use It does not account for the fact that different systems often require different no.s of instructions to implement a given program. A computer’s MIPS ratings does not tell you about how many instructions it require to perform a given task.
CPI  / IPC CPI Cycle Per Instruction No of clock cycles required to execute each instruction CPI =  No. of clock cycles required No. of instructions executed   IPC Instructions Per Cycle No. of instructions executed per cycle IPC =  No of Instructions  executed No of clock cycles required Large  IPC tends to indicate good performance & large CPI indicates poor performance
Choosing Programs to Evaluate  Performance Five levels of programs used to evaluate performance are Real applications Compilers, Text-processing S/W like Word, and Photoshop. Modified ( or scripted) applications To enhance portability or to focus on one particular aspect of system performance Kernels To isolate performance of individual features of a machine. Toy Benchmarks Typically between 10- 100 lines if code and produce a result the user already knows. Synthetic benchmarks Try to match the average frequency of operations and operands of a large set of programs.
Benchmark  Suits A set of programs that are believed to be typical of the programs that will be run on the system System is checked for how long it take to execute all of the programs in the suite. For example  SPEC benchmark by Standard Performance Evaluation Cooperation Other benchmarks are: Business Winstone CC Windows Winbench
Speedup Speedup tells how the performance of an architecture changes as different improvements are made to architecture Ratio of the execution times before and after a change is made Speedup = Execution time old(before) Execution time new(after )
Quantitative Principles of Computer Design   (Continued)  Some principles that are useful in design and analysis of computers Make The Common Case Faster Amdahl’s Law CPU Performance Equation Principles Of Locality Taking Advantage of Parallelism
Make the Common Case Fast In making a design trade-off,   Favor the frequent case over the infrequent case because The frequent case is often simpler and can be done faster than the infrequent case e.g. when multiplying two numbers, overflow is the infrequent case, no overflow is the frequent. However, system will slow down when overflow occurs. We have to decide what the frequent case is and how much performance can be improved by making that case faster Amdahl’s law quantify this principle
Amdahl’s  Law Impact of a given performance improvement on overall performance depends on  How much the improvement improves the performance ( when in use) How often the improvement is in use Execution Time  new  =  Execution Time  old      Fraction  unused  +Fraction  used  Speedup  used Where Fraction  unused  = Fraction of time( not instructions) that the improvement is not in use. Fraction  used  = Fraction of time that the improvement is in use Speedup  used  = Speedup that occurs when the improvement is used
Amdahl’s Law   Continued) Fraction  used  and Fraction  unused  are computed using the execution time before the modification is applied Speedup can be defined as Speedup = Execution time  old(before) Execution time  new(after) 1 =  Fraction  unused  +Fraction  used  Speedup  used
Amdahl’s Law (Continued) The law states “  Performance improvement to be gained from using some faster mode of execution is limited by the fraction of the time the faster mode can be used” Speedup =  Performance for entire task using the enhancement Performance for entire task without using the enhancement Or Speedup =  Execution time for the entire work without using the enhancement Execution time for entire task using the enhancement when possible Speedup = Execution time  old(before) Execution time  new(after) =  1 (1- Fraction  enhanced  )+Fraction  enhanced  Speedup  enhanced
An Example Problem. An enhancement is made to a processor of a server system. The new CPU time is 20 times faster than original. If the original CPU is busy with computation 35% of the time and is waiting for I/O 65% of the time, what is the overall speedup gained by incorporating the enhancement. Solution. Fraction  enhanced  = 35/100=.35. Speedup  enhanced  = 20. =  1 (1- 0.35   )+0.35 20 = 1.498173
CPU Performance Equation CPU time = CPU clock cycles for a program x Clock cycle time  -------(1) Clock Cycle Time =  1 Clock rate (1) Implies CPU time = CPU clock  cycles for a program -------------------(2) Clock rate  Now,  CPI = CPU clock cycles for a program Instruction Count CPU clock cycle for a program = CPI x IC Now (1) implies CPU time = CPI x IC x Clock Cycle time  ------------(3)
CPU Performance Equation (Continued) By putting values equation (3) becomes CPU time = Instructions  x  clock cycles x Seconds Program  x  Instructions x Clock cycles =  Seconds Program Unfortunately, it is difficult to change one parameter in complete isolation from others because the basic technologies involved in changing each characteristic are interdependent: Clock Cycle Time = H/W technology and organization CPI  = Organization and instruction set architecture Instruction Count = Instruction set architecture and compiler technology
Principles of Locality Programs tend to reuse data and instructions they have used recently A program spends 90% of its execution time in only 10% of the code We can predict with reasonable accuracy what instructions and data a program will use in the near future based on its accesses in the recent past. Two types of locality Temporal locality States that recently accessed items are likely to be accessed in the near future. Spatial Locality Items whose addresses are near one another tend to be referenced close together in time.
Taking Advantage of Parallelism One of the most important methods for improving performance – It is obtained through Pipelining – to overlap the execution of instructions, so as to reduce  the total time to complete a sequence of instructions.
Future Work Research is carried out on various aspects in order to improve performance and reduce cost
Thanks Queries  And Suggestions

More Related Content

PDF
Computer performance
PPT
Computer Measures of Performance
PPTX
Processor powerpoint
PDF
OS - Process Concepts
PPT
Chapter 2 - Computer Evolution and Performance
PPTX
Process Management
PPTX
bios booting process
PPTX
Generation of computer
Computer performance
Computer Measures of Performance
Processor powerpoint
OS - Process Concepts
Chapter 2 - Computer Evolution and Performance
Process Management
bios booting process
Generation of computer

What's hot (20)

PPS
Cache memory
DOCX
Intel i3 processor
PPTX
Process in operating system
PPT
System call
PPT
Data transfer and manipulation
PPT
Introduction To Computer 1
PPTX
Threads (operating System)
PPTX
evolution of operating system
PPTX
Operating system memory management
PPTX
DMA and DMA controller
PPTX
cpu scheduling
PPTX
IO Techniques in Computer Organization
DOCX
Case study on Intel core i3 processor.
PPT
Computer Organization and Architecture.
PDF
OS Memory Management
PDF
High Performance Computer Architecture
PPTX
Multiplication algorithm
PPTX
Computer architecture and organization
PPTX
Introduction to HCI (UCC)
Cache memory
Intel i3 processor
Process in operating system
System call
Data transfer and manipulation
Introduction To Computer 1
Threads (operating System)
evolution of operating system
Operating system memory management
DMA and DMA controller
cpu scheduling
IO Techniques in Computer Organization
Case study on Intel core i3 processor.
Computer Organization and Architecture.
OS Memory Management
High Performance Computer Architecture
Multiplication algorithm
Computer architecture and organization
Introduction to HCI (UCC)
Ad

Viewers also liked (20)

PPTX
Tema 4 – Juntos Vivimos Mejor
PPTX
STR: Hotel Industry Overview
PPT
introduction to web application development
PPTX
E commerce
PPT
Cost of Capital
PPTX
Hotel Performance FINAL
PPTX
The e – commerce sector
PPT
PDF
How it works internet standards setting icann53
DOCX
Scope & growth of e commerce_gitanjali maria
PPTX
Webinar - Leverage Integrated Hotel Systems to Boost Revenue Per Guest
PPTX
Best practices for increasing revenue per guest
PPT
Financial Plan
PPT
Hypertext presentation
PPTX
departmental accounting ppt
PDF
CPU Architecture
PPT
TSM 341: Financial Accounting and Management For Hospitality and Tourism
PPT
Uniform system of accountancy
PPT
PDF
Computer architecture
Tema 4 – Juntos Vivimos Mejor
STR: Hotel Industry Overview
introduction to web application development
E commerce
Cost of Capital
Hotel Performance FINAL
The e – commerce sector
How it works internet standards setting icann53
Scope & growth of e commerce_gitanjali maria
Webinar - Leverage Integrated Hotel Systems to Boost Revenue Per Guest
Best practices for increasing revenue per guest
Financial Plan
Hypertext presentation
departmental accounting ppt
CPU Architecture
TSM 341: Financial Accounting and Management For Hospitality and Tourism
Uniform system of accountancy
Computer architecture
Ad

Similar to Measuring Performance by Irfanullah (20)

PPS
Measuringperformance 090527015748-phpapp01
PDF
Computer architecture short note (version 8)
PPT
performance
PPTX
L07_performance and cost in advanced hardware- computer architecture.pptx
PDF
Parallel Computing - Lec 6
PPT
2 CPU Performance (1) by computer organization
PPTX
2. Module_1_Computer Performance, Metrics, Measurement, & Evaluation (1).pptx
PPT
Performance of processor.ppt
PPT
1.prallelism
PPT
1.prallelism
PPTX
Evaluation of computer performance
DOCX
Sheet1Address60741024Offsetaddress0102450506074120484026230723002p.docx
PPT
COMPUTER ARCHITECTURE BASIC CONCEPT
PPT
Computer Organization Design ch2Slides.ppt
PPT
Cs 568 Spring 10 Lecture 5 Estimation
PDF
Advanced Computer Architecture - Lec 2.pdf
PPTX
Aca11 bk2 ch9
PPT
Computer Performance Evaluation(CPI).ppt
PPT
L-2 (Computer Performance).ppt
PPT
Kiến trúc máy tính-COE 301 - Performance.ppt
Measuringperformance 090527015748-phpapp01
Computer architecture short note (version 8)
performance
L07_performance and cost in advanced hardware- computer architecture.pptx
Parallel Computing - Lec 6
2 CPU Performance (1) by computer organization
2. Module_1_Computer Performance, Metrics, Measurement, & Evaluation (1).pptx
Performance of processor.ppt
1.prallelism
1.prallelism
Evaluation of computer performance
Sheet1Address60741024Offsetaddress0102450506074120484026230723002p.docx
COMPUTER ARCHITECTURE BASIC CONCEPT
Computer Organization Design ch2Slides.ppt
Cs 568 Spring 10 Lecture 5 Estimation
Advanced Computer Architecture - Lec 2.pdf
Aca11 bk2 ch9
Computer Performance Evaluation(CPI).ppt
L-2 (Computer Performance).ppt
Kiến trúc máy tính-COE 301 - Performance.ppt

Recently uploaded (20)

PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Enhancing emotion recognition model for a student engagement use case through...
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
DOCX
search engine optimization ppt fir known well about this
PDF
Getting started with AI Agents and Multi-Agent Systems
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
STKI Israel Market Study 2025 version august
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Architecture types and enterprise applications.pdf
PPTX
Modernising the Digital Integration Hub
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
1 - Historical Antecedents, Social Consideration.pdf
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Enhancing emotion recognition model for a student engagement use case through...
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
DP Operators-handbook-extract for the Mautical Institute
sustainability-14-14877-v2.pddhzftheheeeee
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Univ-Connecticut-ChatGPT-Presentaion.pdf
observCloud-Native Containerability and monitoring.pptx
A review of recent deep learning applications in wood surface defect identifi...
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
search engine optimization ppt fir known well about this
Getting started with AI Agents and Multi-Agent Systems
Web Crawler for Trend Tracking Gen Z Insights.pptx
WOOl fibre morphology and structure.pdf for textiles
STKI Israel Market Study 2025 version august
O2C Customer Invoices to Receipt V15A.pptx
Architecture types and enterprise applications.pdf
Modernising the Digital Integration Hub
A comparative study of natural language inference in Swahili using monolingua...
1 - Historical Antecedents, Social Consideration.pdf

Measuring Performance by Irfanullah

  • 1. Measuring Performance By Irfanullah MS (Computer Science) University Of Peshawar
  • 2. In This Demonstration What is Performance? Performance Measurement Methods MIPS CPI / IPC Choosing Programs to Evaluate Performance Benchmark Suits Speedup Quantitative Principles of Computer Design Future Work
  • 3. Performance Performance means How quickly a given system executes a program/ a set of programs Two aspects Response Time The time between the start and the completion of an event– execution time. Throughput The total amount of work done in a given time
  • 4. MIPS Millions of Instructions Per Second An early measure of computer performance. MIPS = No. of instruction executed in a program Time required to run the program typically expressed in millions of instructions per second. Out Of Use It does not account for the fact that different systems often require different no.s of instructions to implement a given program. A computer’s MIPS ratings does not tell you about how many instructions it require to perform a given task.
  • 5. CPI / IPC CPI Cycle Per Instruction No of clock cycles required to execute each instruction CPI = No. of clock cycles required No. of instructions executed IPC Instructions Per Cycle No. of instructions executed per cycle IPC = No of Instructions executed No of clock cycles required Large IPC tends to indicate good performance & large CPI indicates poor performance
  • 6. Choosing Programs to Evaluate Performance Five levels of programs used to evaluate performance are Real applications Compilers, Text-processing S/W like Word, and Photoshop. Modified ( or scripted) applications To enhance portability or to focus on one particular aspect of system performance Kernels To isolate performance of individual features of a machine. Toy Benchmarks Typically between 10- 100 lines if code and produce a result the user already knows. Synthetic benchmarks Try to match the average frequency of operations and operands of a large set of programs.
  • 7. Benchmark Suits A set of programs that are believed to be typical of the programs that will be run on the system System is checked for how long it take to execute all of the programs in the suite. For example SPEC benchmark by Standard Performance Evaluation Cooperation Other benchmarks are: Business Winstone CC Windows Winbench
  • 8. Speedup Speedup tells how the performance of an architecture changes as different improvements are made to architecture Ratio of the execution times before and after a change is made Speedup = Execution time old(before) Execution time new(after )
  • 9. Quantitative Principles of Computer Design (Continued) Some principles that are useful in design and analysis of computers Make The Common Case Faster Amdahl’s Law CPU Performance Equation Principles Of Locality Taking Advantage of Parallelism
  • 10. Make the Common Case Fast In making a design trade-off, Favor the frequent case over the infrequent case because The frequent case is often simpler and can be done faster than the infrequent case e.g. when multiplying two numbers, overflow is the infrequent case, no overflow is the frequent. However, system will slow down when overflow occurs. We have to decide what the frequent case is and how much performance can be improved by making that case faster Amdahl’s law quantify this principle
  • 11. Amdahl’s Law Impact of a given performance improvement on overall performance depends on How much the improvement improves the performance ( when in use) How often the improvement is in use Execution Time new = Execution Time old  Fraction unused +Fraction used Speedup used Where Fraction unused = Fraction of time( not instructions) that the improvement is not in use. Fraction used = Fraction of time that the improvement is in use Speedup used = Speedup that occurs when the improvement is used
  • 12. Amdahl’s Law Continued) Fraction used and Fraction unused are computed using the execution time before the modification is applied Speedup can be defined as Speedup = Execution time old(before) Execution time new(after) 1 = Fraction unused +Fraction used Speedup used
  • 13. Amdahl’s Law (Continued) The law states “ Performance improvement to be gained from using some faster mode of execution is limited by the fraction of the time the faster mode can be used” Speedup = Performance for entire task using the enhancement Performance for entire task without using the enhancement Or Speedup = Execution time for the entire work without using the enhancement Execution time for entire task using the enhancement when possible Speedup = Execution time old(before) Execution time new(after) = 1 (1- Fraction enhanced )+Fraction enhanced Speedup enhanced
  • 14. An Example Problem. An enhancement is made to a processor of a server system. The new CPU time is 20 times faster than original. If the original CPU is busy with computation 35% of the time and is waiting for I/O 65% of the time, what is the overall speedup gained by incorporating the enhancement. Solution. Fraction enhanced = 35/100=.35. Speedup enhanced = 20. = 1 (1- 0.35 )+0.35 20 = 1.498173
  • 15. CPU Performance Equation CPU time = CPU clock cycles for a program x Clock cycle time -------(1) Clock Cycle Time = 1 Clock rate (1) Implies CPU time = CPU clock cycles for a program -------------------(2) Clock rate Now, CPI = CPU clock cycles for a program Instruction Count CPU clock cycle for a program = CPI x IC Now (1) implies CPU time = CPI x IC x Clock Cycle time ------------(3)
  • 16. CPU Performance Equation (Continued) By putting values equation (3) becomes CPU time = Instructions x clock cycles x Seconds Program x Instructions x Clock cycles = Seconds Program Unfortunately, it is difficult to change one parameter in complete isolation from others because the basic technologies involved in changing each characteristic are interdependent: Clock Cycle Time = H/W technology and organization CPI = Organization and instruction set architecture Instruction Count = Instruction set architecture and compiler technology
  • 17. Principles of Locality Programs tend to reuse data and instructions they have used recently A program spends 90% of its execution time in only 10% of the code We can predict with reasonable accuracy what instructions and data a program will use in the near future based on its accesses in the recent past. Two types of locality Temporal locality States that recently accessed items are likely to be accessed in the near future. Spatial Locality Items whose addresses are near one another tend to be referenced close together in time.
  • 18. Taking Advantage of Parallelism One of the most important methods for improving performance – It is obtained through Pipelining – to overlap the execution of instructions, so as to reduce the total time to complete a sequence of instructions.
  • 19. Future Work Research is carried out on various aspects in order to improve performance and reduce cost
  • 20. Thanks Queries And Suggestions