1 / 0

Fundamental of Computer Design

Fundamental of Computer Design. Performance. Background. Emergence of the first microprocessor in late 1970’s Roughly 35% growth per year Important changes in the marketplace: Virtual elimination of assembly language programming reduced the need for object code compatibility

jariah
Download Presentation

Fundamental of Computer Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Fundamental of Computer Design

    Performance
  2. Background Emergence of the first microprocessor in late 1970’s Roughly 35% growth per year Important changes in the marketplace: Virtual elimination of assembly language programming reduced the need for object code compatibility Creation of standardized, vendor-independent operating systems, such as UINX, LINX lowered the risk of bringing out a new architecture
  3. Development of RISC These changes lead to the development of a new set of architectures, called the RISC (Reduced Instruction Set Computer) architecture RISC uses two performance techniques: Instruction level parallelism (pipelining) Use of Cache
  4. Growth in microprocessor performance
  5. Moore’s Law
  6. Technology Scaling
  7. Scaling of Transistors Feature Size has reduced to 3 micron in 1985 to 0.09 micron. Reducing Feature-size means quadratic increase in Transistor Count and better Performance. But higher routing Delays and poor performance of Long Wires Also means More Power Consumption (Less load Capacitance)
  8. IC Cost Trends (Source: IC Knowledge)
  9. Measuring performance Definition of time: Response time, elapse time: The latency to complete the task, including disk access, input/output, operating system overhead etc. CPU time: User CPU Time Time spent in the program System CPU Time: Time Spent by operating system. Unix Time Command: 90.7s 12.9s 2:39 (159s) 65% (90.7+12.9)/159 (User, System, Elapsed Time)
  10. What is a Benchmark? A benchmark is "a standard of measurement or evaluation" (Webster’s II Dictionary). A computer benchmark is typically a computer program that performs a strictly defined set of operations - a workload - and returns some form of result - a metric - describing how the tested computer performed. Computer benchmark metrics usually measure speed: how fast was the workload completed; or throughput: how many workload units per unit time were completed. Running the same computer benchmark on multiple computers allows a comparison to be made. Source: Standards Performance Evaluation Corporation
  11. Programs to Evaluate Performance Real Applications Modified (or scripted) applications Kernels Toy benchmarks Synthetic benchmarks
  12. Programs to evaluate performance Real Applications Example: Compliers for C, text-processing software etc. Modified (or scripted) applications CPU oriented bench mark, I/O may be removed to minimize its impact on execution
  13. Programs to evaluate performance Kernels To isolate performance of individual features of a machine. Toy benchmarks Produces a result that the user already knows Synthetic benchmarks Try to match the average frequency of operations and operands of a large set of programs
  14. Benchmark Suites SPEC95, SPEC2000 (11 Integer, 14 FP), SPEC2006 (12 Integer, 17 FP) C Compiler, Router, FEM Desktop (CPU and Graphics Intensive) Server (File Servers, Web Servers, Transaction Processing) Embedded (EEMBC) 34 Kernels
  15. What is SPEC SPEC is the Standard Performance Evaluation Corporation. SPEC is a non-profit organization whose members include computer hardware vendors, software companies, universities, research organizations, systems integrators, publishers and consultants. SPEC's goal is to establish, maintain and endorse a standardized set of relevant benchmarks for computer systems. Although no one set of tests can fully characterize overall system performance, SPEC believes that the user community benefits from objective tests which can serve as a common reference point.
  16. What does a benchmark measure? the computer processor (CPU), the memory architecture, and the compilers. SPEC CPU2006 contains two components that focus on two different types of compute intensive performance: The CINT2006 suite measures compute-intensive integer performance, and The CFP2006 suite measures compute-intensive floating point performance Source: Standards Performance Evaluation Corporation
  17. Reference Machine Source: Standards Performance Evaluation Corporation SPEC uses a historical Sun system, the "Ultra Enterprise 2" which was introduced in 1997, as the reference machine. The reference machine uses a 296 MHz UltraSPARC II processor, as did the reference machine for CPU2000. But the reference machines for the two suites are not identical: the CPU2006 reference machine has substantially better caches, and the CPU2000 reference machine could not have held enough memory to run CPU2006. It takes about 12 days to do a rule-conforming run of the base metrics for CINT2006 and CFP2006 on the CPU2006 reference machine. SPEC2000 now takes less a minute on latest High Performance M/Cs
  18. Example Result for SPEC 2000 Source: Standards Performance Evaluation Corporation
  19. Example Result for SPEC 2000Source: Standards Performance Evaluation Corporation
  20. Summarizing Performance
  21. Amdahl’s Law The performance improvement to be gained from using faster mode of execution is limited by the fraction of the time the faster mode can be used
  22. Amdahl’s Law: Law of Diminishing Returns
  23. Instructions Clock Cycle Seconds CPU Time = Program Instruction Clock Cycle CPU performance Equations
  24. Example: Frequency of FP operations = 25% Average CPI of FP operations = 4.0 Average CPI of other instructions = 1.33 Frequency of FPSQR = 2% CPI of FPSQR = 20 Assume CPI of FPSQR decreased to 2 OR the CPI of all FP operations to 2.5 Compare these two designs using the CPU performance equations
  25. Example: Solution CPI for enhanced FPSQR CPI for enhanced FP operation
  26. Example: Solution
  27. Instruction Count MIPS = 6 Execution Time  10 Another Measure -- MIPS
  28. Example:An Embedded Processor 120 MIPS for single processor. 80 MIPS for Processor –Co-Processor Combination (That is how they are measured for combined) I= Number of Integer Instructions F = Number of Floating Point Instructions (8M) Y = No. of Integer Instructions to Emulate one FP Instruction (50) W = Time for choice 1 (4 seconds) B = Time for Choice 2
  29. CINT 2006
  30. CFP 2006
  31. End of Lecture 1
More Related