Ch 1.6-1.7 (HP1)

1.6 Performance

  • Defining Performance
    • Two different measures of performance
      • Execution/Response Time: Time between the start and completion of a task
        • NewImage
      • Throughput/Bandwidth: Total amount of work done in a given time
  • Measuring Performance
    • Program execution time is measured in seconds per program
    • CPU Execution Time: Time the CPU spends computing for a specific task and does not include time spent waiting for I/O or running other programs as a CPU may work on more than one task at once
      • User CPU Time: Time spent in the program
      • System CPU Time: Amount of time running system calls
      • Book uses system performance as CPU Time and performance to elapsed time on an unloaded system
    • Clock Cycle/Period: Discrete time intervals a CPU works with
      • NewImage
  • CPU Performance and Its Factors
    • NewImage
    • Improve performance via decreasing # clock cycles
    • Improve performance via decreasing clock cycle time
  • Instruction Performance
    • Another metric measures the performance in the amount of clock cycles required to run the program
    • NewImage
    • Average Clock Cycles per Instruction: CPI
  • The Classic CPU Performance Equation
    • NewImage

 

    • Shows 3 different metrics for CPU time in terms of instruction count
    • CPI can be obtained via software or hardware counters
    • Instruction count depends on the architecture and not the implementation
    • CPI depends on many things including memory design and processor structure and types of instructions that dominate execution
    • Some CPUs vary the clock rate to save power
    • Some instructions take < 1 CPI because things can be parallelized
      • Screen Shot 2017 09 22 at 5 52 24 AM
1.7 The Power Wall
  • Recently we have reached the practical power limit for cooling commodity microprocessors
  • Therefore the clock rate has been increasing slowly and companies are focusing more on the decrease of power consumption
  • Energy usage is better measured joules than watts (joules/second)
  • In CMOS transistors, primary energy consumption is dynamic energy
    • Dynamic Energy: Energy used from switching between 0-1 
    • Dynamic energy depends on the capacitive loading of each transistor and voltage applied
    • Energy is proportional to Capacitive Load * Voltage^2
      • This equation is the energy of a pulse: 0->1->0 or 1->0->1
    • The energy of a single transition is
      • 1/2 Capacitive Load * Voltage^2
    • Power Single Transition=CV^2/2 * Frequency Switched
      • Frequency switched is a function of clock rate
      • Capacitive load per transistor is a function of both # transistors connected to output (fanout) and the technology used
    • The reason why processor speeds used to grow much faster than power consumption is because power is a function of voltage^2 which was reduced at about 15% per generation

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s