CS M151B EE M116C Computer Systems Architecture Glenn Reinman 4731G Boelter Hall reinman cs ucla edu Which airplane has the best performance Boeing 777 Boeing 777 Boeing 747 Boeing 747 BAC Sud Concorde BAC Sud Concorde Douglas DC 8 50 Douglas DC8 50 0 100 200 300 400 0 500 Boeing 777 Boeing 777 Boeing 747 Boeing 747 BAC Sud Concorde BAC Sud Concorde Douglas DC 8 50 Douglas DC8 50 500 1000 Cruising Speed mph 4000 6000 8000 10000 Cruising Range miles Passenger Capacity 0 2000 1 6 Performance Defining Performance 1500 0 100000 200000 300000 400000 Passengers x mph Chapter 1 Computer Abstractions and Technology 2 Response Time and Throughput Response time How long it takes to do a task Throughput Total work done per unit time How are response time and throughput affected by e g tasks transactions per hour Replacing the processor with a faster version Adding more processors We ll focus on response time for now Chapter 1 Computer Abstractions and Technology 3 Relative Performance Define Performance 1 Execution Time X is n time faster than Y Performanc e X Performanc e Y Execution time Y Execution time X n Example time taken to run a program 10s on A 15s on B Execution TimeB Execution TimeA 15s 10s 1 5 So A is 1 5 times faster than B Chapter 1 Computer Abstractions and Technology 4 Measuring Execution Time Elapsed time Total response time including all aspects Processing I O OS overhead idle time Determines system performance CPU time Time spent processing a given job Discounts I O time other jobs shares Comprises user CPU time and system CPU time Different programs are affected differently by CPU and system performance Chapter 1 Computer Abstractions and Technology 5 CPU Clocking Operation of digital hardware governed by a constant rate clock Clock period Clock cycles Data transfer and computation Update state Clock period duration of a clock cycle e g 250ps 0 25ns 250 10 12s Clock frequency rate cycles per second e g 4 0GHz 4000MHz 4 0 109Hz Chapter 1 Computer Abstractions and Technology 6 CPU Time CPU Time CPU Clock Cycles Clock Cycle Time CPU Clock Cycles Clock Rate Performance improved by Reducing number of clock cycles Increasing clock rate Hardware designer must often trade off clock rate against cycle count Chapter 1 Computer Abstractions and Technology 7 CPU Time Example Computer A 2GHz clock 10s CPU time Designing Computer B Aim for 6s CPU time Can do faster clock but causes 1 2 clock cycles How fast must Computer B clock be Clock CyclesB 1 2 Clock CyclesA Clock RateB CPU Time B 6s Clock Cycles A CPU Time A Clock Rate A 10s 2GHz 20 10 9 1 2 20 10 9 24 10 9 Clock RateB 4GHz 6s 6s Chapter 1 Computer Abstractions and Technology 8 Instruction Count and CPI Clock Cycles Instruction Count Cycles per Instruction CPU Time Instruction Count CPI Clock Cycle Time Instruction Count CPI Clock Rate Instruction Count for a program Determined by program ISA and compiler Average cycles per instruction Determined by CPU hardware If different instructions have different CPI Average CPI affected by instruction mix Chapter 1 Computer Abstractions and Technology 9 CPI Example Computer A Cycle Time 250ps CPI 2 0 Computer B Cycle Time 500ps CPI 1 2 Same ISA Which is faster and by how much CPU Time A CPU Time B Instruction Count CPI Cycle Time A A I 2 0 250ps I 500ps A is faster Instruction Count CPI Cycle Time B B I 1 2 500ps I 600ps CPU Time B I 600ps 1 2 CPU Time I 500ps A by this much Chapter 1 Computer Abstractions and Technology 10 CPI in More Detail If different instruction classes take different numbers of cycles n Clock Cycles CPIi Instruction Count i i 1 Weighted average CPI n Clock Cycles Instruction Count i CPIi CPI Instruction Count i 1 Instruction Count Relative frequency Chapter 1 Computer Abstractions and Technology 11 CPI Example Alternative compiled code sequences using instructions in classes A B C Class A B C CPI for class 1 2 3 IC in sequence 1 2 1 2 IC in sequence 2 4 1 1 Sequence 1 IC 5 Clock Cycles 2 1 1 2 2 3 10 Avg CPI 10 5 2 0 Sequence 2 IC 6 Clock Cycles 4 1 1 2 1 3 9 Avg CPI 9 6 1 5 Chapter 1 Computer Abstractions and Technology 12 Performance Summary The BIG Picture Instructions Clock cycles Seconds CPU Time Program Instruction Clock cycle Performance depends on Algorithm affects IC possibly CPI Programming language affects IC CPI Compiler affects IC CPI Instruction set architecture affects IC CPI Tc Chapter 1 Computer Abstractions and Technology 13
View Full Document