CIS 273 Computer Organization - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

CIS 273 Computer Organization

Description:

Time of Concorde vs. Boeing 747? Concord is 1350 mph / 610 mph = 2.2 times faster ... Throughput of Concorde vs. Boeing 747 ? Boeing is 286,700 pmph / 178,200 ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 17
Provided by: geig9
Category:

less

Transcript and Presenter's Notes

Title: CIS 273 Computer Organization


1
CIS 273Computer Organization Design
  • Instructor Dr. Michael Geiger
  • Spring 2007
  • Lecture 6 Computer Performance

2
Lecture outline
  • Exam notes stats, solution, regrades
  • Computer performance
  • Performance metrics
  • Execution time
  • Improving performance
  • Tradeoffs

3
Exam statistics
  • Mean 68.9
  • Median 71.3
  • Std. deviation 14.5
  • High 91
  • Avg. by question
  • 9 / 18 (50)
  • 10 / 13 (77)
  • 7.4 / 12 (61)
  • 12.6 / 16 (79)
  • 14 / 20 (70)
  • 9 / 11 (83)
  • 6.7 / 10 (67)

4
Regrade requests
  • Submit IN WRITING by end of class next Tuesday
    (4/3)
  • Must explain why regrade is necessary
  • Bad example I deserve more points on question
    5.
  • Good example On question 5, part III, I used
    the refined hardware multiplication method, not
    the pencil and paper method. My answer differs
    from the one in the solution, but I think its
    still correct.

5
Performance
  • Measure of how well a computer performs a users
    applications
  • Why study performance?
  • As a user/buyer, you can make better purchasing
    decisions
  • As an engineer, you can make better design
    decisions
  • Measuring performance requires basis for
    comparison and metric for evaluation
  • Analogy if youre buying a car, what do you look
    for?
  • Speed (Maximum? Acceleration?)
  • Engine performance (Horsepower?)
  • MPG
  • Cost
  • Some combination of the above (e.g.,
    price/performance)

6
Latency vs. throughput
  • Two metrics for measuring performance
  • Latency How long does it take to complete a
    particular task?
  • Also called execution time or running time
  • Usually measured in time (e.g., microseconds)
  • Throughput How many tasks can be performed in a
    unit of time?
  • Usually measured in units per time (e.g.,
    megabytes/second)
  • Example We want to transport people between
    Providence and Boston, using either
  • A 2-seat BMW _at_ 150 MPH, or
  • A chartered bus (45 seats) _at_ 60 MPH
  • Which is better?

7
Time-based performance metric
  • Choose performance measures that track running
    time
  • Higher performance ? less time to run the
    application
  • Execution time on a computer is typically divided
    into
  • User time Time spent executing instructions in
    the user code
  • System time Time spent executing instructions in
    the OS on behalf of the user code (e.g., opening
    files)
  • Other Time when the system is idle or executing
    other programs

8
Illustration of execution time
  • Real or wall clock time is the sum of all
    three.
  • Note File access delays sometimes counted as
    idle even though theyre yours.
  • Normally execution time is measured as
  • user time system time

9
Measuring time
  • Clock ticks refer to a full clock cycle
  • Cycle time (period) time between ticks
    seconds per cycle.
  • Clock rate (frequency) cycles per second
  • 1 Hz 1 cycle/sec
  • Example a 200MHz clock has a cycle time of

10
Improving performance
  • Improving performance means decreasing the time
    to run the program
  • So to increase performance
  • Decrease the number of cycles required for a
    program, or
  • Decrease the cycle time (i.e., increase the clock
    frequency)
  • A program requires a set number of instructions
    (for a given ISA)
  • How do we relate cycles and instructions?

11
Cycles and instructions
  • In most processors
  • A single instruction (one line of assembly code)
    requires more than one clock cycle
  • Different (types of) instructions take different
    numbers of cycles (e.g., integer vs. floating
    point)
  • Another metric Cycles per instruction (CPI)
  • The smaller, the better
  • The average CPI of a program depends on how many
    of each instruction type is executed
  • Clock cycles for a program
  • Instructions executed Average CPI

12
Example Execution time
  • A program requires executing 100 million
    instructions on a processor which typically takes
    2 CPI with a 2GHz clock. How much time will the
    program take?
  • Answer

13
Performance comparison
  • If machine X is n times faster than machine Y
  • Example
  • Time of Concorde vs. Boeing 747?
  • Concord is 1350 mph / 610 mph 2.2 times faster
  • Throughput of Concorde vs. Boeing 747 ?
  • Boeing is 286,700 pmph / 178,200 pmph 1.6
    times faster

14
What affects performance?
  • Execution time clock cycles x cycle time
  • Clock cycles for a given program
  • Instructions executed x Average CPI

15
Parameters to compare
  • Table below shows execution time factors in
    different situations
  • Differences determine relative performance

16
Tradeoffs
  • Improving one parameter often worsens the other
  • Micro-architects may have a choice between
  • Reducing CPI and increasing clock cycle time, or
  • Reducing clock cycle time and increasing CPI
  • Compiler writers may have several choices that
    differ in instruction count and CPI.
  • Example Consider the following High-level
    language code
  • int a, b
  • b a 5
  • In generating machine code the compiler may have
    a choice between
  • sll R2, R4, 2 1 cycle
  • add R2, R2, R4 1 cycle
  • or
  • multiply R2, R4, 5 4 cycles
Write a Comment
User Comments (0)
About PowerShow.com