ÐÏࡱá>þÿ ÷ þÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ€zðaÝâÝß¿ß�Xoñçò¹˜ä( ‰ ‰ ÿÿÿîU»UîU»U€zða§Îg\ÓOðy �´­÷Ek‘Í( ‰ ‰ ÿÿÿªDªªDªèñ_é(€à˜` ò”/È 0ÒÕÈ·DTimes New RomanT©T©Xê‘Ü–¾ 0Ü–Õ·DTahomaew RomanT©T©Xê‘Ü–¾ 0Ü–Õ ·DWingdingsRomanT©T©Xê‘Ü–¾ 0Ü–Õ0·D°e0}fÔšingsRomanT©T©Xê‘Ü–¾ 0Ü–Õˆ@·DArialngsRomanT©T©Xê‘Ü–¾ 0Ü–ÕP·DSymbolgsRomanT©T©Xê‘Ü–¾ 0Ü–Õ¤ €Aÿÿ¥.©  @£nÿý?" dd@ÿÿïÿÿÿÿÿÿ  @@``€€ äðÜðøü>€%-DH -   . # $%   !81/ðXrð$ÝâÝß¿ß�Xoñçò¹˜ÿifrð$§Îg\ÓOðy �´­÷Ek‘ÿii£ ð<…‡�ƒ†A¿ÀÅAÿ`ñÀÀÀÝÝݲ²²MMMÊ(º@ñMMM÷ð8ó€ó€Ð³º“°öÊš;­”ÇÊš;úgþý4BdBdp‘ô–¾ 0æþÿÿ4ÿÿÿpûppû@ <ý4!d!d —¡k 0T©4ê‘<ý4dddd —¡k 0T©4ê‘ÿ <ý4BdBd —Ãl 0T©ˆ0Š0º___PPT10‹ ÀÀŠðº___PPT9‹ÒøÒùÊnðÀÖu†=!B¾öWÈøk€@~ÿ‰PNG  IHDRF¸}Ù PLTEÀÀÀ™™Ì3™£¹¸:tRNS@æØf cmPPJCmp0712Om·¥9IDATÓc``bŽ ¡¨$Ú<˜¤&…²–40(®Z©Àжj•„Ë‚ÕAt€õMæ† ù„iþIEND®B`‚®ð¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬.€ÿÿ€ÿÿ¯ ¬€ÿÿ¯2¬2¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯5¬ €ÿÿ€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯!¬€ÿÿ?ÙBÚ+ º.\ELEG323-05F\Topic4.pptOÙ Ú=ðÐSóŸª Ÿ¨!Topics 4: Performance Measurement¡""c0ª " óŸ¨ Reading List¡ c(ª  Ÿ¨VSlides: Topic4 Henn & Patt: Chapter 4 Other papers as assigned in class or homework ¡„’ " ’ " ’ " ’ " .’ " xVccªV  óŸ¨ Performance¡ c(ª  Ÿ 0 An attempt to quantify how well a particular computer can perform a user s applications Problems: Essentially a software+hardware issue Different machines have different strengths and weaknesses There is an enormous amount of hype and outright deception in the market  be wary¡€YZ2 Z´’ -Z[ccc´cª  óŸ¨Conflicting Goals¡c(ª  Ÿ – User: Find the most suitable machine to get the job done at the lowest cost Þð Application-oriented metrics Vendor: Persuade you to buy their machine regardless of your needs Þð hardware-oriented metrics¡¾lx2_xccHcâcc=câcª Ë óŸ¨Why Study Performance?¡c(ª  Ÿ¨º Know the vocabulary and understand the issues, so that: As a user/buyer, you can make better purchasing decisions As an engineer, you can make better hardware/software design decision¡n92:’ -’ -F’ -:c�cª º ó71Ÿ¨Summary of Metrics¡c(ª  Ÿ¨yLatency and throughput CPU time, CPI, clock rate and instruction count MIPS, relative MIPS SPEC ratio and rate Benchmarks¡zzaª z ó Ÿ¨Latency vs. Throughput¡c(ª  Ÿ¨žThese are two very different metrics! Latency: How long does it take to get a particular task done? - Also called execution time or running time - Usually measured in time (e.g., microseconds) Throughput: How many tasks can you perform in a unit of time? - Also related to bandwidth (communication channels, storage) - Usually measured in units per time (e.g., megabytes/ second) Relationship between them ¡î&>_“ -“ -Ú“ -.c7c`c c´ccgºþgºþª Ÿ ó Ÿ¨Performance Expressed as Time¡Pc(ª  Ÿ¨ýAbsolute time measures Difference between start and finish of an operation Synonyms: running time, elapsed time, completion time, execution time, response time, latency Relative (normalized) time measures Running time normalized to some reference time ¡œ’ " –’’ -–$’ " –0’ -–’ -c’c$c1cªý  ó Ÿ¨(Choosing a Time-Based Performance Metric¡)P)c(ª ) Ÿ dGuiding principle: choose performance measures that track running time Performance µð Higher performance means it takes less time to run the application, so bigger is better¡B³’ " XcZãcª ³ ó Ÿ¨The Nature of Execution Time¡c(ª  Ÿ ´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 kernel on behalf of the user code (e.g., opening files) Other: Time when the system is idle or executing other programs Use  time and  top commands in Unix to see these¡8>n@3Bc6c cdccAcccc cª [ ó Ÿ¨Illustration of Execution Time¡c(ª  Ÿ f Real or  wall clock time is the sum of all three¡44cª 3 ó82Ÿ¨CPU Time vs. Latency¡c(ª  Ÿ¨M- The time CPU spends for computing the given task, not including the time waiting for I/O or running other programs. Also known as CPU execution time -Consists of user CPU time and system CPU time. User CPU time: Total time CPU spends in the task System CPU time: Total time CPU spends in operating system for the sake of the task.¡vv"0“ -†vc"c0c† c ª N ó Ÿ¨(Application Metrics vs. Hardware Metrics¡)P)c(ª ) Ÿ¨± How do you relate the application-oriented performance measurements to what is going on inside the machine? Most processors are synchronous, so we can use the clock as a basis.¡@²x˜cccª ± óŸ¨ Clock Cycles¡ c(ª  Ÿ °Clock  ticks refer to clock edges (rising or falling) Cycle time (period) = time between ticks = seconds per cycle Clock rate (frequency) = cycles per second (1 Hz = 1 cycle/sec) A 2GHz clock has a cycle time of¡hÙ’ " ;cgÊ(þ*cgÊ(þKcª Ù óŸ¨Measuring Time¡c(ª  Ÿ >If you re lucky, you can count clock cycles directly; some CPUs have a built-in counter which increments every clock cycle. If you re not, you have to use a slower clock. Most systems have extra hardware which generates a regular tick; many operating systems will count these ticks for you. Timing accuracy limited by the resolution of the clock  you get less accurate readings off a 1Hz clock than a 1MHz clock!¡j|’ " x’ " (§’ " x’ " ({’ " x cª   óŸ¨Cycles and Instructions¡c$ª  Ÿ àIn almost all processors, a single instruction (executing one line of assembly code) requires more than one clock cycle. Either: - One instruction must finish before the next can begin - Consecutive instructions may overlap ( pipelining ) In most processors, different types of instructions may take different numbers of cycles (e.g., integer vs. floating point) ¡‚�’ " “ " 9“ -“ -8“ -|’ " “ " qcªp  óŸ¨ Relating cycles and Instructions¡!P!c(ª ! Ÿ ŠSo we can add the following to our vocabulary: Cycles per instruction (CPI)  smaller is better Instruction per cycle (IPC) bigger is better If the cycles to execute one instruction vary depending on the instruction, then the average CPI or IPC of a program will depend on how many of each type of instruction is executed.¡°01’ " ’ " ä’ " 0ccgÊ(þ.cgÊ(þÊcª F óŸ¨ Clock, CPI and Instruction Count¡!P!c(ª ! Ÿ ô Clock rate - Hardware technology and organization CPI - Instruction set architecture Instruction - Instruction set architecture and count compiler technology - CPI should be measured, instead of check  Manuals Why? ( affected by many factors, e.g Cache/memory, etc.) - The most important is time : lower inst. count may increase instruction clock cycle time ¡ºâF™c gÿþ+c gÿþ"c gÿþcgÿþÛcª z óŸ¨Example¡c(ª  Ÿ¨™ 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?¡šxšcª ™ óŸ¨Answer¡c(ª  Ÿ¨p Or you can work backwards from a known execution times and clock rate to calculate the CPI for a given program.¡qZqcª p ó;5Ÿ¨How to Improve the Performance?¡ P c(ª  Ÿ¨”Reduce the number of instructions to execute Increase the number of instructions per cycle Concurrent execution of instructions Increase clock rate¡˜-’ " ’ " (.’ " %’ " ’ " .c.c%ccª • ó4.Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨‰ Sometimes it is useful in designing the CPU to calculate the number of total CPU clock cycles as CPU clock cycles = (CPIi * Ii)¡fŠx‚ckçÿckçÿcª ‰ ó5/Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨ Where Ii represents number of times instruction of type i is executed in a program and CPIi represents the average number of clock cycles for instruction of type i. This form can be used to express CPU time as CPU time =( (CPIi * Ii))/clock rate¡xckçÿ0cc!ckçÿ„ccckçÿckçÿcc cª  ó60Ÿ¨CPI Should Be Measured¡ g(ª  Ÿ¨¬ CPI should be measured and not just calculated from a table in the back of a reference manual Always bear in mind that the real measure of computer performance is time. ¡^_x2Mxcgÿþ–cª ¬ óŸ¨Hardware-Oriented Metrics¡c(ª  Ÿ "Clock rate and IPC are often combined into various figures of merit: MIPS (Millions of Instructions Per Second)  pronounced  mips MOPS (Millions of Operations Per Second)  pronounced  mops MFLOPS (Millions of Floating-point Operations Per Second)  pronounced  megaflops and sometimes written  megaFLOPS Replace first letter with K (kilo), G (giga), T (tera), P (peta), etc., as appropriate. ¡xE(ñ’ " x’ " 2Z“ " FcgÊ(þ;cgÊ(þ9cgÊ(þc‰cc cccccc cª ’ óŸ¨'Problems with Hardware-Oriented Metrics¡(P(c(ª ( Ÿ Processors with different ISAs may require a different number of instructions to perform the same task, so MIPS hard to compare - MOPS and MFLOPS are a somewhat better measure - How do you count floating-point divides? Vendors usually report  peak rates¡f€’ " ’ " 2]“ " x’ " 2$’ " cª  ó"Ÿ¨MIPS Calculation¡Pc(ª  Ÿ¨| One alternative to time as the metric is MIPS, or million instructions per second. For a given program, MIPS is simply ¡nx(<*cgÿþNckª | ó*$Ÿ¨Limitations of MIPS¡c(ª  Ÿ¨-Meaningful only for comparing machines with same ISA, same program, and same input Instruction capability not considered -May vary inversely with performance! Instruction count is an absolute number without considering the frequency of each instruction class¡zTx&x&xdxTc&c&cd c ª  ó Ÿ¨MIPS - What is Wrong with It ?¡c(ª  Ÿ¨  A number of popular measures have been adopted in the quest for a standard measure of computer performance, with the result that a few innocent terms have been twisted from their well-defined environment and forced into a service for which they were never intended.¡B x‚cgÿþucª   ó93Ÿ¨"Misleading Performance Measurement¡##c(ª # Ÿ¨:-MIPS=instruction count/(execution time*106) MIPS1= MIPS2=¡¨-*ckcckçÿckçÿcª ; ó!Ÿ¨$Key: Execution Time of Real Programs¡%P%c(ª % Ÿ ` The authors position is that the only consistent and reliable measure of performance is the execution time of real programs, and that all proposed alternatives to time as the metric or to real programs as the items measured have eventually led to misleading claims or even mistakes in computer design. ¡d1^cgÿþcgÿþ´cª 0 ó& Ÿ¨ What is MIPS?¡c(ª  Ÿ Ò Meaningless Indication of Processor Speed - Bob Estall Computer, 1987¡N/;P<cc cª i ó'!Ÿ¨&MIPS Is Not A Multidimensional Measure¡'P'c(ª ' Ÿ |A computer system is multidimensional - therefore should be measured by some  vector ; MIPS is a scalar - measures only one dimension; MIPS is a very useful measure within it s dimension.¡dW’ " ’ " (1’ " ’ " (5’ " ¿cª ¿ êø-ï  0`ð @EŒÿÿÿÿÿÌ��³²²²o‰÷OV­`ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛý`ð ÿÿÿ²²²MMM–––êêêwwwÀÀÀ`ð ÿÿÿ33²²²f3ÝÆ§ÙÁgŠzfÀ®ž`ð 3fÿÿÿÌÿÌf™™™™ÌEŠ`ð JHÿÿÿ3ÌÌf™™™Ì™ff`ð 33ÿÿÿÿÿÌÌ™Ìf€€RP`ð ÿÿÿ=bÈÑÚf™šÀê€ÃÈ�«Ë¶ËÖ£>ÿý?" dd@ÿÿïÿÿÿÿÿÿ,£’ÿý?wndØ@ÿÿïÿÿÿÿÿÿ àn<Ô àw_Ð@ànAð``<€ £nÿý?" dd@ÿÿïÿÿÿÿÿÿ   @@``€€P£P   @ ` €`£ p£>€£> @(ð8(ðCC ð¸'ð( ð ð ð¢!ðT ð€à ð  ðˆ"ñ¿ð€àðŒðb ð€à ð # ð ˆ"ñ¿ð€àð˜ ð\ ðÀ€€ ð  ðˆ"ñ¿ðÀ€€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð € ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ €À ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ €€ ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@ €@ ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð € ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ €À ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ €€ ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ðzð\ ðÀÀà ð  ðˆ"ñ¿ðÀÀàð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð!  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð"  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð#  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð$  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð%  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð&  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð'  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð àð†B ð(  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ À àð†B ð)  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ € àð†B ð*  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@ @ àð†B ð+  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð àð†B ð,  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ À àð†B ð-  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ € àð†B ð.  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð/  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð0  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð1  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð2  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð3  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð4  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð5  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð6  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð7  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð8  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð² ð9  # ðt…‡¿?€�ƒ†A‡Á¿Àÿ?¿ÿ60%"ñ¿†ð@€`ðtB ð:  “ ð6…‡D¿Àÿ"ñ¿ðÀÀÐðtðb ð`” Ð ð; # ð ˆ"ñ¿ð|i4 ðtB ð< B “ ð6…‡D¿Àÿ"ñ¿ð`  ðtB ð=  “ ð6…‡D¿Àÿ"ñ¿ðP˜PÐð 2 ð> B  ðÌ…‡B»¨CÀ¨EÁNGG¹¤ÿH„ʲI[TQÁ�ƒ¿Àÿ ûÿÿÿ»¨À¨zR(Vûÿÿÿ»¨À¨zR(V[T`TzR(V[T`T"ñ¿ðٔȃðä ð? “ ð6€¼tz‡�ƒ¿Àÿ "ñ¿ðÀ€ �ðà z ðXŸ¨ Click to edit Master title style¢!ª! ðò ð@ “ ðú€Ävz�ƒ¿Àÿ �ÃÄRectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"ñ¿ð°0Ððà z 𢟨RClick to edit Master text styles Second level Third level Fourth level Fifth level¢!    ªS ðô ðA “ ð6€01z‡�ƒ¿Àÿ "ñ¿ð`°`€ðà z ðhŸ *¡c øª  ðö ðB “ ð6€ #z‡�ƒ¿Àÿ "ñ¿ð`°Ð€ðà  z ðjŸ *¡c úª  ðö ðC “ ð6€ðýz‡�ƒ¿Àÿ "ñ¿ð` Ѐðà z ðjŸ *¡c ت  ðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ðð> ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆÔŠ̺___PPT9‹®­2€p­2€€­2€ ºBlueprintîù*ï € 0 ©*ð¡*@ðGGð*ð( ð ððB$ðT ð€à ð ðˆ"ñ¿ð€àð6ðb ð€à ð# ð ˆ"ñ¿ð€àð’ ð ã ðT…‡¿?�¿Àÿ?¿ÿ"ñ¿†ð@€`ð®ð\ ð€à ð ðˆ"ñ¿ð€àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð € ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ €À ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ €€ ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@ €@ ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð € ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ €À ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ €€ ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@€@ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ€Àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€€ð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð  à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð! à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð" à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð# à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð$ à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð% à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð& à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð' à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð àð†B ð( à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ À àð†B ð) à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ € àð†B ð* à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@ @ àð†B ð+ à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð àð†B ð, à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀ À àð†B ð- à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€ € àð†B ð. à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð/ à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð0 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð1 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð2 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð3 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð4 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàð†B ð5 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð€€àð†B ð6 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ð@@àð†B ð7 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðàð†B ð8 à ðH…‡D¿ÀÂÄÅAÿ "ñ¿ðÀÀàðtB ð9 “ ð6…‡D¿Àÿ"ñ¿ðÀÀÐð$ð\ ð/c3  ð: ðˆ"ñ¿ð/c3 ð¨B ð; “ ð6…‡D¿Àÿ"ñ¿ðú/ú3 ð,$ñD  0ðtB ð< “ ð6…‡D¿Àÿ"ñ¿ð„Ž …ðtB ð= “ ð6…‡D¿Àÿ"ñ¿ð€ªc«ð2 ð>B  ðÒZ…‡B»¨CÀ¨EÁNGG¹¤ÿH„ʲI[TQÁ�ƒ¿Àÿ ûÿÿÿ»¨À¨zR(Vûÿÿÿ»¨À¨zR(V[T`TzR(V[T`T"ñ¿ð©]Fùðtð\ ðÈ ¨´ ð? ðˆ"ñ¿ðÈ ¨´ðtB ð@‚ “ ð6…‡D¿Àÿ"ñ¿ðÈr ¨r ðtB ðAB “ ð6…‡D¿Àÿ"ñ¿ð4 4´ð2 ðB  ðÒZ…‡B»¨CÀ¨EÁNGG¹¤ÿH„ʲI[TQÁ�ƒ¿Àÿ ûÿÿÿ»¨À¨zR(Vûÿÿÿ»¨À¨zR(V[T`TzR(V[T`T"ñ¿ðè …¯ ðä ðC “ ð6€ø. ‡�ƒ¿Àÿ "ñ¿ðPp� ðà .  ðXŸ¨ Click to edit Master title style¢!ª! ð« ðD “ ðú€Tn. �ƒ¿Àÿ �ÃÄRectangle: Click to edit Master text styles Second level Third level Fourth level Fifth level"ñ¿ð%p0u ðà .  ð[Ÿ¨#Click to edit Master subtitle style¢$ª$ ðô ðE “ ð6€¬r. ‡�ƒ¿Àÿ "ñ¿ð`°`€ðà .  ðhŸ *¡c øª  ðö ðF “ ð6€`w. ‡�ƒ¿Àÿ "ñ¿ð`°Ð€ðà  .  ðjŸ *¡c úª  ðö ðG “ ð6€,Ý. ‡�ƒ¿Àÿ "ñ¿ð` Ѐðà .  ðjŸ *¡c ت  ðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?/ð ð>ðBð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýðfñ€ 0 æðÞÐð,ðvð( ð ð,ðâ ð, ƒ ð0€ìêS�ƒ¿Àÿ ð18ðà  Ø  ðjŸ *¡c ùª  ðä ð, ƒ ð0€ÜëS�ƒ¿Àÿ ðg ˜8ðà Ø  ðlŸ *¡c øª  ðd ð, c ð$‡¿ÿ ?ðÔ4dø ðà Ø ð ð, ƒ ð0€´íS�ƒ¿Àÿ ð” 6bŒðà Ø  𢟨RClick to edit Master text styles Second level Third level Fourth level Fifth level¢!    ªS ðè ð, “ ð6€dòS‡�ƒ¿Àÿ ð(1`ðà  S ðjŸ *¡c úª  ðê ð, “ ð6€à÷S‡�ƒ¿Àÿ ð(g ˜`ðà S ðlŸ *¡c ت  ðH ð, ƒ ð0�ƒ“bÿf”@—¿ÿ ?ð ÿÿÿ€€€Ì™33ÌÌÌÿ²²²ˆ8Š0º___PPT10‹ë.“ºÄ.»ÉÀ PðHàðtðàð( ð ðtðà ðt ƒ ð0€0]�ƒ¿Àÿ ð18ðà  ] ðhŸ *¡c ùª  ðâ ðt ƒ ð0€¬ ]�ƒ¿Àÿ ðg ˜8ðà ] ðjŸ *¡c øª  ðæ ðt “ ð6€(]‡�ƒ¿Àÿ ð(1`ðà  ] ðhŸ *¡c úª  ðè ðt “ ð6€t]‡�ƒ¿Àÿ ð(g ˜`ðà ] ðjŸ *¡c ت  ðH ðt ƒ ð0�ƒ“bÿf”@—¿ÿ ?ð ÿÿÿ€€€Ì™33ÌÌÌÿ²²²ˆ8Š0º___PPT10‹ë.“ºÄ°ÕîÏï€ 0 öðî0ðð†ð( ð ððx ð c ð$€hš. ¿ÿDð¥Šp@ðà .  ð žðÎ ð “ ðú€ˆÝ. �ƒ¿Àÿ �ÃÄRectangle: Click to edit Master text styles Second level Third level Fourth level Fifth levelðÐp�  𤟨8Introduction to Computer Systems Engineering (CPEG 323)¡<9þ(wn.c aª 9 ðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ€€€Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îï € 0 ¦ðžPð|ð6ð( ð ð|ðx ð| c ð$€ø £ ¿ÿ? ˆð¾ðà  £  ð žð~ ð| s ð*€Ä ‘¿ÿ@ ˆðZ= ã ðà £  ð žðH ð| ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿÚÚÚÚÚÚ‘‘‘333gggˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ`ðð$ð( ð ððr ð S ð€P%Ø ¿ÿ? ðÀ€ �ðà  Ø  ð žðr ð S ð€è Ø ¿ÿ@ ð뛦 ðà Ø  ð žðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒpðð$ð( ð ððr ð S ð€€h~¿ÿ? ðÀ€ �ðà  ~ ð žðr ð S ð€Øî~¿ÿ@ ðà€S° ðà ~ ð žðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ€ðð$ð( ð ððr ð S ð€8ä~¿ÿ? ðÀ€ �ðà  ~ ð žðr ð S ð€,t~¿ÿ@ ðØñ øðà ~ ð žðH ð ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ�ðäð$ð( ð ðäðr ðä S ð€¤L¿ÿ? ðÀ€ �ðà  L ð žðr ðä S ð€|L¿ÿ@ ð°0Ü ðà L ð žðH ðä ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ ð$ð$ð( ð ð$ðr ð$ S ð€8¾~¿ÿ? ðÀ€ �ðà  ~ ð žðr ð$ S ð€¿~¿ÿ@ ð¥ªxÃðà ~ ð žðH ð$ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ°ð0ð$ð( ð ð0ðr ð0 S ð€D'L¿ÿ? ðÀ€ �ðà  L ð žðr ð0 S ð€(L¿ÿ@ ðnáBŽðà L ð žðH ð0 ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +î²ï € 0 ÙðÑÀð4ðið( ð ð4ðr ð4 S ð€�7L¿ÿ? ðÀ€ �ðà  L ð žðr ð4 S ð€h8L¿ÿ@ ðçGgðà L ð žð=ð8 ðP P°0  ð4ð’È (r ðZB ð4 s ð*…D¿Àÿðx @ˆ@ðÌ¢ ð4 £ ð<€ì ck cª  ðÁ¢ ðH £ ð<€ü«L…‡¿�ƒ¿Àÿð‡Ë TÅ  ðMŸ¨1¡cª  ð¹¢ ðH £ ð<€ä¨L…‡¿�ƒ¿ÀÿðQ ¡ e K  ðMŸ¨x¡cª  ð`ð8 ð¼ Ò ËÒ  ðHðÏ ¼ ËÏ ðZB ðH s ð*…D¿ÀÿðÙ À ËÀ ðÄ¢ ðH £ ð<€ð³L…‡¿�ƒ¿Àÿðm Ø Ò  ðPŸ¨sec.¡cª  ðê¢ ðH £ ð<€ˆ§L…‡¿�ƒ¿Àÿð¼ Ò šÌ  ðvŸ¨109 nsec¡> ckcª  ðÄ¢ ðH £ ð<€€½L…‡¿�ƒ¿ÀÿðR RL  ðXŸ¨ = 0.5 nsec.¡  cª  ðH ðH ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ ðLð$ð( ð ðLðr ðL S ð€ ÏL¿ÿ? ðÀ€ �ðà  L ð žðr ðL S ð€|¡¿ÿ@ ð~.¥žðà L ð žðH ðL ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ0ðXð$ð( ð ðXðr ðX S ð€,ÞL¿ÿ? ðÀ€ �ðà  L ð žðr ðX S ð€ðÞL¿ÿ@ ðœÿv¦ ðà L ð žðH ðX ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ@ð\ð$ð( ð ð\ðr ð\ S ð€@îL¿ÿ? ðÀ€¬�ðà  L ð žðr ð\ S ð€ïL¿ÿ@ ð ’2ðà L ð žðH ð\ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îåï € 0  ðPð€ðœð( ð ð€ðÆ ð€ 3 ðr€|ýL�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆðª2èZðà L ð žð– ð€ ³ ðB€TþL‡�ƒ¿Àÿ ? ˆðÀ€¬�ðà  L ð žðH ð€ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îmï € 0 ”ðŒ`ð`ð$ð( ð ð`ðr ð` S ð€øýF¿ÿ? ðÀ€ �ðà  F ð žðr ð` S ð€ÐþF¿ÿ@ ðºµ4Ä ðà F ð žðH ð` ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îöï € 0 c ð[ pðdñðç ð( ð ðdðr ðd S ð€àLØ ¿ÿ? ðÀ€ �ðà  Ø  ð žðr ðd S ð€¸MØ ¿ÿ@ ðW «²É ðà Ø  ð žð¹¢ ðd £ ð<€OØ …‡¿�ƒ¿ÀÿðˆF ‚ ðMŸ¨x¡cª  ðXB ð d ƒ ð0…D¿ÀÿˆðôY K ôðÉ¢ ð d ³ ðB€tTØ …‡¿�ƒ¿Àÿˆð , y  ðWŸ¨ instruction¡  cª  ðÆ¢ ð d ³ ðB€|XØ …‡¿�ƒ¿Àÿˆðw -  ðTŸ¨2 cycles¡  cª  ðí¢ ðd £ ð<€ì[Ø …‡¿�ƒ¿ÀÿðyÛj s ð�Ÿ¨1 x 108instructions¡>ck cª  ðRB ðd s ð*…D¿Àÿðh4ðè¢ ðd £ ð<€È`Ø …‡¿�ƒ¿Àÿð0k ð|Ÿ¨2 x 109 cycles¡>ckcª  ðÀ¢ ðd £ ð<€ØfØ …‡¿�ƒ¿ÀÿðÏÌ ðTŸ¨1 second¡  cª  ð¹¢ ðd £ ð<€´jØ …‡¿�ƒ¿Àÿðqÿ Ãk ðMŸ¨x¡cª  ðû¢ ðd £ ð<€ÐØ …‡¿�ƒ¿ÀÿðÑ% ¶ Ëð,$ñD  0 ð[Ÿ¨ = 0.1 seconds¡cª  ð0ðl ð°ˆ "‚  ðdðd äV^ð,$ñDÿÿÿ 0ð­ ðd “ ðú€mØ �ƒ¿Àÿ �ÃÄRectangle: Click to edit Master text styles Second level Third level Fourth level Fifth levelð° ž  ð{Ÿ¨ CPU time = ¡* þ0wnZ cª  ¦øØÔÐððZB ðd s ð*…D¿ÀÿðW‹ Ì‹ ðÊ¢ ðd £ ð<€ÄzØ …‡¿�ƒ¿Àÿ𪠈 î ‚  ðVŸ¨ Clock rate¡  cª  ðË¢ ðd ƒ ð0€ rØ ¿�ƒ¿Àÿðhˆ "‚  ðcŸ¨Instruction count * CPI¡cª  ðH ðd ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ; Š3 º___PPT10‹ +Ïíã.Dñ¿ 'ñ }Ø ÿÿÿÿ=ñ @Bñ Dñz 'ñ •ÿÿÿÿ=ñ @BñAñ?%ñ,(ñ <ñ +O%ñ,(ñ <ñ +Dñu'ñ =ñ%ñ(ñÿÿÿÿDñ'ñ =ñ%ñ(ñDñÅ'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*dÿÿÿÿÿÿÿÿ%ñ(ñDñ'ñ è=ñ+ñÏ4ñ 8?ñRCñBñBñCñèBñ#ppt_wBñ*ñY3ñ>ñBñ ppt_w<ñû*dÿÿÿÿÿÿÿÿDñ'ñ è=ñ+ñÏ4ñ 8?ñRCñBñBñCñèBñ#ppt_hBñ*ñY3ñ>ñBñ ppt_h<ñû*dÿÿÿÿÿÿÿÿDñƒ'ñ è=ñ+ñK4ñ 8?ñÎCñBñBñ‰#ppt_x+(cos(-2*pi*(1-$))*-#ppt_x-sin(-2*pi*(1-$))*(1-#ppt_y))*(1-$)CñèBñ€?Bñ*ñY3ñ>ñBñ ppt_x<ñû*dÿÿÿÿÿÿÿÿDñƒ'ñ è=ñ+ñK4ñ 8?ñÎCñBñBñ‰#ppt_y+(sin(-2*pi*(1-$))*-#ppt_x+cos(-2*pi*(1-$))*(1-#ppt_y))*(1-$)CñèBñ€?Bñ*ñY3ñ>ñBñ ppt_y<ñû*dÿÿÿÿÿÿÿÿDñ4'ñ =ñ%ñ(ñÿÿÿÿDñÜ'ñ =ñ%ñ(ñDñ„'ñ =ñ4@Bñ�Bñ Bñ°Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*dÿÿÿÿÿÿÿÿ%ñ(ñó+8+0+d0 +îï € 0 <ð4€ðôðÌð( ð ðôðÆ ðô 3 ðr€�Û �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?? ˆðÀàÑðà  Û  ð žðÆ ðô 3 ðr€”òÛ �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð\�¬M ðà Û  ð žðH ðô ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îVï € 0 }ðu�ðÔð ð( ð ðÔðÆ ðÔ 3 ðr€l¥Ø �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð)𔯠ðà Ø  ð žðÏ ðÔ ã ðT€¼¦Ø �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ð X , &  ðKŸ¨n¡ `ª  ðÓ ðÔ ã ðT€¬Ø �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ð½  W ¤  ðOŸ¨i=1¡ bª  ð·¢ ðÔ £ ð<€\¯Ø …‡¿�ƒ¿Àÿðù ? %   ðKŸ¨S¡aª  ð– ðÔ ³ ðB€@²Ø ‡�ƒ¿Àÿ ? ˆðÀ€Â�ðà  Ø  ð žðH ðÔ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îòï € 0 ð ð Øð©ð( ð ðØðÆ ðØ 3 ðr€p Ø �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð|| ðà Ø  ð žð5ðF ðÙñ5e  ðØ ðˆðÞ èD R ððN ða½ó  ðØ ðˆðÙñ5e ð× ðØ ã ðT€ÀØ �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ð©}Ÿ  ðKŸ¨n¡ `ª  ðÛ ðØ ã ðT€XÅØ �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ðaù ½ó  ðOŸ¨i=1¡ bª  ð¿¢ ðØ £ ð<€ÈÈØ …‡¿�ƒ¿Àÿð¿ùß  ðKŸ¨S¡aª  ð– ðØ ³ ðB€ËØ ‡�ƒ¿Àÿ ? ˆðÀ€Â�ðà  Ø  ð žðÈ¢ ð Ø £ ð<€ÔÍØ …‡¿�ƒ¿ÀÿðsÑm ð\Ÿ  Cont d¡ gª  ðH ðØ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îåï € 0  ð°ðÜðœð( ð ðÜðÆ ðÜ 3 ðr€ÑØ �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð##—] ðà Ø  ð žð– ðÜ ³ ðB€ÄØ ‡�ƒ¿Àÿ ? ˆðÀ€ �ðà  Ø  ð žðH ðÜ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îÔ ï € 0 ðÀðhð«ð( ð ðhðr ðh S ð€°ìØ ¿ÿ? ðÀ€ �ðà  Ø  ð žðž ðh S ð€ˆíØ ¿ÿ@ ð°0Ðð<$ñD  0à Ø  ð žðS¢ ðh £ ð<€¸�ý…‡¿�ƒ¿Àÿð =w 3ð,$ñ  0 𳟨( or even E (exa), Z (zeta) ..)¡B   ª.    ðH ðh ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆaŠYº___PPT10‹9+®ììDñå'ñ þÿÿÿÿ=ñ @Bñ Dñ 'ñ •ÿÿÿÿ=ñ @BñAñ?%ñ,(ñ <ñ +O%ñ,(ñ <ñ +Dñá'ñ =ñ%ñ(ñÿÿÿÿDñ‰'ñ =ñ%ñ(ñDñ1'ñ =ñ4@Bñ�Bñ Bñ°Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*h8’%ñ(ñDñ¥'ñ ô=ñ-ñm6ñBñbox(in)*ñ<3ñ<ñû*h8’Dñî'ñ =ñ%ñ(ñÿÿÿÿDñ–'ñ =ñ%ñ(ñDñ>'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*hÿÿÿÿÿÿÿÿ%ñ(ñDñ¥'ñ ô=ñ-ñm6ñBñbox(in)*ñ<3ñ<ñû*hÿÿÿÿÿÿÿÿ+8+0+h0 +îmï € 0 ”ðŒÐðlð$ð( ð ðlðr ðl S ð€¬üØ ¿ÿ? ðÀ€ �ðà  Ø  ð žðr ðl S ð€„ýØ ¿ÿ@ ð¦v›Ë ðà Ø  ð žðH ðl ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îëï € 0 ð àð Œð¢ð( ð ðŒðÆ ðŒ 3 ðr€¨Œ« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆðÊâ) ðà «  ð žðÖ ðŒ ã ðT€ Ž« �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ð‡ ¾§  ðRŸ¨MIPS =¡  aª  ðpB ðŒ à ðH…‡¿ÀËœ1ÒÓÔÕÿ?ð( ªö( ðÏ ðŒ ã ðT€p’« �«g‚Ö³ƒ«g„Ö³…¿�ƒ¿Àÿ?ðz tXš  ðKŸ¨=¡ aª  ðÇ¢ ðŒ £ ð<€X—« …‡¿�ƒ¿Àÿð0 RG P  ð[Ÿ¨Instruction count¡aª  ðÀ¢ ð Œ £ ð<€ä•« …‡¿�ƒ¿Àÿð0 è½P  ðTŸ¨ Clock rate¡  aª  ðë¢ ð Œ £ ð<€|�« …‡¿�ƒ¿Àÿð ³Q4  ðŸ¨Execution time * 106 ¡8aiaª  ðÏ¢ ð Œ £ ð<€Ø�« …‡¿�ƒ¿Àÿð þ„4  ðcŸ¨ CPI * 106¡* aiª  ðpB ðŒ€ à ðH…‡¿ÀËœ1ÒÓÔÕÿ?ð& o+( ð– ðŒ ³ ðB€D§« ‡�ƒ¿Àÿ ? ˆðÀ€Â�ðà  «  ð žðH ðŒ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îï € 0 <ð4ðð¬ðÌð( ð ð¬ðÆ ð¬ 3 ðr€\¶« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?? ˆð‡©ÉWðà  «  ð žðÆ ð¬ 3 ðr€4·« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð�¹ð( ðà «  ð žðH 𬠃 ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +îŒï € 0 <ð4ð„ðÌð( ð ð„ðÆ ð„ 3 ðr€øÄ« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?? ˆð‡©ÉWðà  «  ð žðÆ ð„ 3 ðr€ÐÅ« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð�¹ð( ðà «  ð žðH ð„ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²î]Eï € 0 �(ð‡(ð67ìð(ð( ð ðìðx ðì c ð$€¨Ó« ¿ÿ? ˆðÀ€ �ðà  «  ð žð¤ ðì c ð$€”Ô« ¿ÿ@ ˆð‚ ¶Þrð<$ñ 0à «  ð žðGðv ðO À­3 ðì# ð ˆ#"ñ"Ÿ ÃtéÝðóe Ãf ðÙ ðì £ ð<€׫ ¿�ƒ¿Àÿ?ðÖM­3 ðeŸ¨1¡cª  ¦ø @`€ðÙ ðì £ ð<€\ç« ¿�ƒ¿Àÿ?ðþMÖ3 ðeŸ¨1¡cª  ¦ø @`€ðÚ ðì £ ð<€Œð« ¿�ƒ¿Àÿ?ð¡ Mþ3 ðfŸ¨10¡cª  ¦ø @`€ðâ ðì £ ð<€èù« ¿�ƒ¿Àÿ?ðO M¡ 3 ðnŸ¨ Compiler 2¡  cª  ¦ø @`€ðÙ ð ì £ ð<€ 7£ ¿�ƒ¿Àÿ?ðÖF­M ðeŸ¨1¡cª  ¦ø @`€ðÙ ð ì £ ð<€Ðó£ ¿�ƒ¿Àÿ?ðþFÖM ðeŸ¨1¡cª  ¦ø @`€ðÙ ð ì £ ð<€\Ó¡¿�ƒ¿Àÿ?ð¡ FþM ðeŸ¨5¡cª  ¦ø @`€ðâ ð ì £ ð<€üÜ¡¿�ƒ¿Àÿ?ðO F¡ M ðnŸ¨ Compiler 1¡  cª  ¦ø @`€ðÙ ð ì £ ð<€,ס¿�ƒ¿Àÿ?ðÖS­F ðeŸ¨C¡cª  ¦ø @`€ðÙ ðì £ ð<€”î¡¿�ƒ¿Àÿ?ðþSÖF ðeŸ¨B¡cª  ¦ø @`€ðÚ ðì £ ð<€´ö¡¿�ƒ¿Àÿ?ð¡ SþF ðfŸ¨A ¡cª  ¦ø @`€ð ðì £ ð<€„S¿�ƒ¿Àÿ?ð¡ À­S 🟨;Instruction counts (in billions) for each instruction class¡<<cª < ¦ø @`€ðï ðì £ ð<€¤ S¿�ƒ¿Àÿ?ðO À¡ F ð{Ÿ¨ Code from¡  cª   ¦ø @`€ð`B ðì ƒ ð0…¿ÀËŸoÿ ?¿ðO À¡ Àð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ðO F­Fð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ðO M­MðfB ðì “ ð6…¿ÀËŸo×ÿ ?¿ðO 3­3ð`B ðì ƒ ð0…¿ÀËŸoÿ ?¿ðO ÀO FðfB ðì “ ð6…¿ÀËŸo×ÿ ?¿ð­À­3ð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ð¡ S­Sð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ð¡ À¡ 3ð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ðþSþ3ð`B ðì ƒ ð0…¿ÀËœ1ÿ ?¿ðÖSÖ3ðfB ðì “ ð6…¿ÀËŸo×ÿ ?¿ðO FO 3ðfB ðì “ ð6…¿ÀËŸo×ÿ ?¿ð¡ À­Àð. ðr ðËyv Ÿ ðì# ð ˆ#"ñŸ Ã!Ö ðÈs +ðÙ ðì £ ð<€S¿�ƒ¿Àÿ?ð‹“v Ÿ ðeŸ¨3¡cª  ¦ø @`€ðÙ ð ì £ ð<€X!S¿�ƒ¿Àÿ?ð¡“‹Ÿ ðeŸ¨2¡cª  ¦ø @`€ðÙ ð!ì £ ð<€ˆ*S¿�ƒ¿Àÿ?ð¶“¡Ÿ ðeŸ¨1¡cª  ¦ø @`€ðÛ ð"ì £ ð<€�3S¿�ƒ¿Àÿ?ðË“¶Ÿ ðgŸ¨CPI¡cª  ¦ø @`€ðÙ ð#ì £ ð<€˜ ð,$ñDÿÿÿ  0 𳟨!{(1*5+2*1+3*1)*109}/(500*106)=20s¡b" 2ck ckcª " ðH¢ ð3ì ƒ ð0€¤lS¿�ƒ¿Àÿð9 ù‰3 ð,$ñDÿÿÿ  0 𴟨"{(1*10+2*1+3*1)*109}/(500*106)=30s¡b# 2ck ckcª # ð@¢ ð4ì ƒ ð0€DtS¿�ƒ¿Àÿðd Yé^ð,$ñDÿÿÿ  0 𬟨{(5+1+1)*109}/(20*106)=350¡b 2 ckckcª  ðA¢ ð5ì ƒ ð0€|S¿�ƒ¿Àÿði>Îcð,$ñDÿÿÿ  0 𭟨{(10+1+1)*109}/(30*106)=400¡b 2 ckckcª  ð> ð6ì “ ðú€ø‚S�ƒ¿Àÿ �ÃÄRectangle: Click to edit Master text styles Second level Third level Fourth level Fifth levelðe ›.w ð,$ñDÿÿÿ 0 ðàŸ Ž-Execution time=Sð(CPIi*li)/clock rate Execution time1= Execution time2=¡ &þ wn"þ n<cãëçÿãëçÿã cckçÿckçÿcª H ¦øØÔÐððÀ¢ ð7ì ƒ ð0€xŠS¿�ƒ¿ÀÿðÛ¢¹ Õ ð`Ÿ¨Clock rate: 500MHZ¡ 2cª  ðH ðì ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ@EŒ·ÁëffìØ‚²²²o‰÷ÏÛýˆvŠnº___PPT10‹Nê.+ë~¦*DñÖ'ñ ý« ÿÿÿÿ=ñ @Bñ Dñ‘'ñ •ÿÿÿÿ=ñ @BñAñ?%ñ,(ñ <ñ +O%ñ,(ñ <ñ +DñA'ñ =ñ%ñ(ñÿÿÿÿDñé'ñ =ñ%ñ(ñDñ‘'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*6ìÿÿÿÿÿÿÿÿ%ñ(ñóDñ{'ñ =ñ%ñ(ñÿÿÿÿDñ#'ñ =ñ%ñ(ñDñË'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*1ìÿÿÿÿÿÿÿÿ%ñ(ñDñ'ñ ô=ñ+ñÙ4ñ 8?ñ\CñBñ#ppt_xBñCñèBñ#ppt_xBñ*ñY3ñ>ñBñ ppt_x<ñû*1ìÿÿÿÿÿÿÿÿDñ'ñ ô=ñ+ñá4ñ 8?ñdCñBñ1+#ppt_h/2BñCñèBñ#ppt_yBñ*ñY3ñ>ñBñ ppt_y<ñû*1ìÿÿÿÿÿÿÿÿDñ{'ñ =ñ%ñ(ñÿÿÿÿDñ#'ñ =ñ%ñ(ñDñË'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*3ìÿÿÿÿÿÿÿÿ%ñ(ñDñ'ñ ô=ñ+ñÙ4ñ 8?ñ\CñBñ#ppt_xBñCñèBñ#ppt_xBñ*ñY3ñ>ñBñ ppt_x<ñû*3ìÿÿÿÿÿÿÿÿDñ'ñ ô=ñ+ñá4ñ 8?ñdCñBñ1+#ppt_h/2BñCñèBñ#ppt_yBñ*ñY3ñ>ñBñ ppt_y<ñû*3ìÿÿÿÿÿÿÿÿDñs'ñ =ñ%ñ(ñÿÿÿÿDñ'ñ =ñ%ñ(ñDñ‘'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*ì-%ñ(ñóDñ‘'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*ì-4%ñ(ñóDñ‘'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*ì4;%ñ(ñóDñ{'ñ =ñ%ñ(ñÿÿÿÿDñ#'ñ =ñ%ñ(ñDñË'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*4ìÿÿÿÿÿÿÿÿ%ñ(ñDñ'ñ ô=ñ+ñÙ4ñ 8?ñ\CñBñ#ppt_xBñCñèBñ#ppt_xBñ*ñY3ñ>ñBñ ppt_x<ñû*4ìÿÿÿÿÿÿÿÿDñ'ñ ô=ñ+ñá4ñ 8?ñdCñBñ1+#ppt_h/2BñCñèBñ#ppt_yBñ*ñY3ñ>ñBñ ppt_y<ñû*4ìÿÿÿÿÿÿÿÿDñ{'ñ =ñ%ñ(ñÿÿÿÿDñ#'ñ =ñ%ñ(ñDñË'ñ =ñA@Bñ�Bñ Bñ°Bñ0Bñ%ñ(ñDñø'ñ =ñ1ñ :ñBñvisible*ño3ñ>ñ+Bñ#style.visibility<ñû*5ìÿÿÿÿÿÿÿÿ%ñ(ñDñ'ñ ô=ñ+ñÙ4ñ 8?ñ\CñBñ#ppt_xBñCñèBñ#ppt_xBñ*ñY3ñ>ñBñ ppt_x<ñû*5ìÿÿÿÿÿÿÿÿDñ'ñ ô=ñ+ñá4ñ 8?ñdCñBñ1+#ppt_h/2BñCñèBñ#ppt_yBñ*ñY3ñ>ñBñ ppt_y<ñû*5ìÿÿÿÿÿÿÿÿ+P+0+ì0 ++0+1ì0 ++0+3ì0 ++0+4ì0 ++0+5ì0 ++0+6ì0 +î\ï € 0  ð0ðˆðœð( ð ðˆðÆ ðˆ 3 ðr€hYS�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð/‹Ò ðà S ð žð– ðˆ ³ ðB€„S‡�ƒ¿Àÿ ? ˆðÀ€Â�ðà  S ð žðH ðˆ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²î’ï € 0 Bð:@ðœðÒð( ð ðœðÆ ðœ 3 ðr€ ÌS�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?? ˆð†ËëVðà  S ð žðÌ ðœ C ðx€øÌS�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð 0|ðà S ð žðH 𜠃 ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²î¤ï € 0 TðLPð ðäð( ð ð ðÆ ð  3 ðr€X¹z�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð»©> ðà z ð žðÞ ð  s ðŠ€Dýz�«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿�ƒ¿Àÿ ?? ˆðØËë¨ðà  z ð žðH ð  ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²rÀ@ù_�LÃ0ªÉ”ÎÌ ~Ó P¸óÕhØ"Ý—ß0¯î$ñ3À¨ ô T90D„¾#Ç’µR®š¥F& �¬Ÿ*˜O4`*m/g6 Ñ.ìIU;ò&õÙX¢;Å1è`é(€à˜` ò”/È 0ÒÕÈ·DTimes New RomanT©T©Xê‘Ü–¾ 0Ü–Õ·DTahomaþÿà…ŸòùOh«‘+'³Ù0˜8 hp� ø  < H T`h¨PowerPoint PresentationPGaoPC:\Program Files\Microsoft Office\Templates\Presentation Designs\Blueprint.potGuang R. Gao73Microsoft PowerPoint@�óû~@@w{sÃ@àM(ØÅpG(7ÿÿÿÿ‰g  ‹9  y¡üÿÿÿ-úÿÿÿ-$ÿÿÿÿÿÿx x ÿÿÿÿÿÿú--'ÿÿüÏÛý--$:ÿÿ:  ÿÿ:ÿÿ--'ÿÿ-B( ÿÿÿýÛϪDªªDª--$      --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$           --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$     --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$      --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$      --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$       --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ $ $ % % % %%%%%$$--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ * * * * + +++****--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ / / / 0 0000///--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ 4 4 5 5 5 5555544--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ : : : : ; ;;;::::--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ? ? ? @ @@@@???--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ D D E E E EEEEEDD--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ J J J J K KKKJJJJ--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ O O O P PPPPOOO--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ T T U U U UUUUUTT--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ Z Z Z Z [ [[[ZZZZ--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ _ _ _ ` ````___--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ d d e e e eeeeedd--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ j j j j k kkkjjjj--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ o o o p ppppooo--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ t t u u u uuuuutt--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ xxxxx--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ x x x x x --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ xxxx--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ xxxxx--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ xxxxx--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ x xxx --ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ %%x%x%x%x$x$%%%%%--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ++x+x*x*x*x***+++--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ 00x0x/x/x//0000--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ 55x5x5x5x4x455555--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ;;x;x:x:x:x:::;;;--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ @@x@x?x?x??@@@@--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ EExExExExDxDEEEEE--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ KKxKxJxJxJxJJJKKK--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ PPxPxOxOxOOPPPP--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ UUxUxUxUxTxTUUUUU--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ [[x[xZxZxZxZZZ[[[--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ``x`x_x_x__````--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ eexexexexdxdeeeee--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ kkxkxjxjxjxjjjkkk--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ppxpxoxoxoopppp--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ uuxuxuxuxtxtuuuuu--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ {{x{xzxzxzxzzz{{{--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ €€x€xxx€€€€--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ……x…x…x…x„x„……………--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ‹‹x‹xŠxŠxŠxŠŠŠ‹‹‹--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ��x�x�x�x������--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ••x•x•x•x”x”•••••--ð'ÿÿ-B( ÿÿÿýÛϪDªªDª--$ ››x›xšxšxšxššš›››--ð'ÿÿúo‰÷-ü-%šÿÿš)--ð'ÿÿúo‰÷--%A--ð'ÿÿúo‰÷--%Y55--ð'ÿÿúo‰÷--%t --ð'ÿÿúo‰÷-- %     --ð'ÿÿúo‰÷--%)_’_--ð'ÿÿúo‰÷--%�6�h--ð'ÿÿúo‰÷-- %‘_‘_‘`‘`�a�aŽaŽ`�`�_�^Ž]Ž]�]--ð'ÿÿûþÿ�@Tahoma-. @EŒ2 u 2005/10/23.û¼†"System�9ä-ðûþÿ�@Tahoma-. @EŒ 2 uC\‘.-ðûþÿ�@Tahoma-. @EŒ2 uDELEG323.-ðûþÿ�@Tahoma-. @EŒ 2 uL-‘.-ðûþÿ�@Tahoma-. @EŒ 2 uM05F.-ðûþÿ�@Tahoma-. @EŒ 2 uP\‘.-ðûþÿ�@Tahoma-. @EŒ2 uQ Topic4.ppt.-ðûþÿ�@Tahoma-. @EŒ 2 u‘1‘.-ðûõÿ¼@Arial-. @EŒ(2 &Topics 4: Performance  .-ðûõÿ¼@Arial-. @EŒ2 2/ Measurement  .-ðûúÿ¼@Arial-. @EŒ92 F#!Introduction to Computer Systems .-ðûúÿ¼@Arial-. @EŒ2 MC Engineering.-ðûûÿ¼@Arial-. @EŒ2 ^G (CPEG 323).-ðRoot Entryÿÿÿÿÿÿÿÿ��d›Oφꪹ)è éÀûøØÅg€PicturesÿÿÿÿÿÿÿÿCurrent Userÿÿÿÿÿÿÿÿÿÿÿÿ,SummaryInformation(ÿÿÿÿÚÈ8fÔšingsRomanT©T©Xê‘Ü–¾ 0Ü–Õˆ@·DArialngsRomanT©T©Xê‘Ü–¾ 0Ü–ÕP·DSymbolgsRomanT©T©Xê‘Ü–¾ 0Ü–Õ¤ €Aÿÿ¥.©  @£nÿý?" dd@ÿÿïÿÿÿÿÿÿ  @@``€€ äðÜðøü>€%-DH -   . # $%   !81/ðXrð$ÝâÝß¿ß�Xoñçò¹˜ÿifrð$§Îg\ÓOðy �´­÷Ek‘ÿii£ ð<…‡�ƒ†A¿ÀÅAÿ`ñÀÀÀÝÝݲ²²MMMÊ(º@ñMMM÷ð8ó€ó€Ð³º“°öÊš;­”ÇÊš;úgþý4BdBdp‘ô–¾ 0æþÿÿ4ÿÿÿpûppû@ <ý4!d!d —¡k 0T©4ê‘<ý4dddd —¡k 0T©4ê‘ÿ <ý4BdBd —Ãl 0T©ˆ0Š0º___PPT10‹ ÀÀŠðº___PPT9‹ÒøÒùÊnðÀÖu†=!B¾öWÈøk€@~ÿ‰PNG  IHDRF¸}Ù PLTEÀÀÀ™™Ì3™£¹¸:tRNS@æØf cmPPJCmp0712Om·¥9IDATÓc``bŽ ¡¨$Ú<˜¤&…²–40(®Z©Àжj•„Ë‚ÕAt€õMæ† ù„iþIEND®B`‚®ð¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬.€ÿÿ€ÿÿ¯ ¬€ÿÿ¯2¬2¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯5¬ €ÿÿ€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯!¬€ÿÿ?ÙBÚ+ º.\ELEG323-05F\Topic4.pptOÙ Ú=ðÔSóŸª Ÿ¨!Topics 4: Performance Measurement¡""c0ª " óŸ¨ Reading List¡ c(ª  Ÿ¨VSlides: Topic4 Henn & Patt: Chapter 4 Other papers as assigned in class or homework ¡„’ " ’ " ’ " ’ " .’ " xVccªV  óŸ¨ Performance¡ c(ª  Ÿ 0 An attempt to quantify how well a particular computer can perform a user s applications Problems: Essentially a software+hardware issue Different machines have different strengths and weaknesses There is an enormous amount of hype and outright deception in the market  be wary¡€YZ2 Z´’ -Z[ccc´cª  óŸ¨Conflicting Goals¡c(ª  Ÿ – User: Find the most suitable machine to get the job done at the lowest cost Þð Application-oriented metrics Vendor: Persuade you to buy their machine regardless of your needs Þð hardware-oriented metrics¡¾lx2_xccHcâcc=câcª Ë óŸ¨Why Study Performance?¡c(ª  Ÿ¨º Know the vocabulary and understand the issues, so that: As a user/buyer, you can make better purchasing decisions As an engineer, you can make better hardware/software design decision¡n92:’ -’ -F’ -:c�cª º ó71Ÿ¨Summary of Metrics¡c(ª  Ÿ¨yLatency and throughput CPU time, CPI, clock rate and instruction count MIPS, relative MIPS SPEC ratio and rate Benchmarks¡zzaª z ó Ÿ¨Latency vs. Throughput¡c(ª  Ÿ¨žThese are two very different metrics! Latency: How long does it take to get a particular task done? - Also called execution time or running time - Usually measured in time (e.g., microseconds) Throughput: How many tasks can you perform in a unit of time? - Also related to bandwidth (communication channels, storage) - Usually measured in units per time (e.g., megabytes/ second) Relationship between them ¡î&>_“ -“ -Ú“ -.c7c`c c´ccgºþgºþª Ÿ ó Ÿ¨Performance Expressed as Time¡Pc(ª  Ÿ¨ýAbsolute time measures Difference between start and finish of an operation Synonyms: running time, elapsed time, completion time, execution time, response time, latency Relative (normalized) time measures Running time normalized to some reference time ¡œ’ " –’’ -–$’ " –0’ -–’ -c’c$c1cªý  ó Ÿ¨(Choosing a Time-Based Performance Metric¡)P)c(ª ) Ÿ dGuiding principle: choose performance measures that track running time Performance µð Higher performance means it takes less time to run the applicatioþÿÿÿ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙ ÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöþÿÿÿfùúûüýþÿBýÿÿÿýÿÿÿýÿÿÿþÿÿÿj  !"#$%&'()*+,-./0123456789:;<=øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÿÿh ÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ þÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿhted CPICPI Should Be MeasuredHardware-Oriented Metrics(Problems with Hardware-Oriented MetricsMIPS CalculationLimitations of MIPS#MIPS - What May Go Wrong with It ?#Misleading Performance Measurement%Key: Execution Time of Real ProgramsWhat is MIPS?'MIPS Is Not A Multidimensional Measure  Fonts UsedDesign Template Slide Titles!4 ö_À‘ãÁfôLongLongGuang R. Gew RomanT©T©Xê‘Ü–¾ 0Ü–Õ ·DWingdingsRomanT©T©Xê‘Ü–¾ 0Ü–Õ0·D°e0}fÔšingsRomanT©T©Xê‘Ü–¾ 0Ü–Õˆ@·DArialngsRomanT©T©Xê‘Ü–¾ 0Ü–ÕP·DSymbolgsRomanT©T©Xê‘Ü–¾ 0Ü–Õ¤ €Aÿÿ¥.©  @£nÿý?" dd@ÿÿïÿÿÿÿÿÿ  @@``€€ äðÜðøü>€%-DH -   . # $%   !81/ðXrð$ÝâÝß¿ß�Xoñçò¹˜ÿifrð$§Îg\ÓOðy �´­÷Ek‘ÿii£ ð<…‡�ƒ†A¿ÀÅAÿ`ñÀÀÀÝÝݲ²²MMMÊ(º@ñMMM÷ð8ó€ó€Ð³º“°öÊš;­”ÇÊš;úgþý4BdBdp‘ô–¾ 0æþÿÿ4ÿÿÿpûppû@ <ý4!d!d —¡k 0T©4ê‘<ý4dddd —¡k 0T©4ê‘ÿ <ý4BdBd —Ãl 0T©ˆ0Š0º___PPT10‹ ÀÀŠðº___PPT9‹ÒøÒùÊnðÀÖu†=!B¾öWÈøk€@~ÿ‰PNG  IHDRF¸}Ù PLTEÀÀÀ™™Ì3™£¹¸:tRNS@æØf cmPPJCmp0712Om·¥9IDATÓc``bŽ ¡¨$Ú<˜¤&…²–40(®Z©Àжj•„Ë‚ÕAt€õMæ† ù„iþIEND®B`‚®ð¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬.€ÿÿ€ÿÿ¯ ¬€ÿÿ¯2¬2¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯5¬ €ÿÿ€ÿÿ¯¬€ÿÿ¯¬€ÿÿ¯!¬€ÿÿ?ÙBÚ+ º.\ELEG323-05F\Topic4.pptOÙ Ú=ðîSóŸª Ÿ¨!Topics 4: Performance Measurement¡""c0ª " óŸ¨ Reading List¡ c(ª  Ÿ¨VSlides: Topic4 Henn & Patt: Chapter 4 Other papers as assigned in class or homework ¡„’ " ’ " ’ " ’ " .’ " xVccªV  óŸ¨ Performance¡ c(ª  Ÿ 0 An attempt to quantify how well a particular computer can perform a user s applications Problems: Essentially a software+hardware issue Different machines have different strengths and weaknesses There is an enormous amount of hype and outright deception in the market  be wary¡€YZ2 Z´’ -Z[ccc´cª  óŸ¨Conflicting Goals¡c(ª  Ÿ – User: Find the most suitable machine to get the job done at the lowest cost Þð Application-oriented metrics Vendor: Persuade you to buy their machine regardless of your needs Þð hardware-oriented metrics¡¾lx2_xccHcâcc=câcª Ë óŸ¨Why Study Performance?¡c(ª  Ÿ¨º Know the vocabulary and understand the issues, so that: As a user/buyer, you can make better purchasing decisions As an engineer, you can make better hardware/software design decision¡n92:’ -’ -F’ -:c�cª º ó71Ÿ¨Summary of Metrics¡c(ª  Ÿ¨yLatency and throughput CPU time, CPI, clock rate and instruction count MIPS, relative MIPS SPEC ratio and rate Benchmarks¡zzaª z ó Ÿ¨Latency vs. Throughput¡c(ª  Ÿ¨žThese are two very different metrics! Latency: How long does it take to get a particular task done? - Also called execution time or running time - Usually measured in time (e.g., microseconds) Throughput: How many tasks can you perform in a unit of time? - Also related to bandwidth (communication channels, storage) - Usually measured in units per time (e.g., megabytes/ second) Relationship between them ¡î&>_“ -“ -Ú“ -.c7c`c c´ccgºþgºþª Ÿ ó Ÿ¨Performance Expressed as Time¡Pc(ª  Ÿ¨ýAbsolute time measures Difference between start and finish of an operation Synonyms: running time, elapsed time, completion time, execution time, response time, latency Relative (normalized) time measures Running time normalized to some reference time ¡œ’ " –’’ -–$’ " –0’ -–’ -c’c$c1cªý  ó Ÿ¨(Choosing a Time-Based Performance Metric¡)P)c(ª ) Ÿ dGuiding principle: choose performance measures that track running time Performance µð Higher performance means it takes less time to run the application, so bigger is better¡B³’ " XcZãcª ³ ó Ÿ¨The Nature of Execution Time¡c(ª  Ÿ ´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 kernel on behalf of the user code (e.g., opening files) Other: Time when the system is idle or executing other programs Use  time and  top commands in Unix to see these¡8>n@3Bc6c cdccAcccc cª [ ó Ÿ¨Illustration of Execution Time¡c(ª  Ÿ f Real or  wall clock time is the sum of all three¡44cª 3 ó82Ÿ¨CPU Time vs. Latency¡c(ª  Ÿ¨M- The time CPU spends for computing the given task, not including the time waiting for I/O or running other programs. Also known as CPU execution time -Consists of user CPU time and system CPU time. User CPU time: Total time CPU spends in the task System CPU time: Total time CPU spends in operating system for the sake of the task.¡vv"0“ -†vc"c0c† c ª N ó Ÿ¨(Application Metrics vs. Hardware Metrics¡)P)c(ª ) Ÿ¨± How do you relate the application-oriented performance measurements to what is going on inside the machine? Most processors are synchronous, so we can use the clock as a basis.¡@²x˜cccª ± óŸ¨ Clock Cycles¡ c(ª  Ÿ °Clock  ticks refer to clock edges (rising or falling) Cycle time (period) = time between ticks = seconds per cycle Clock rate (frequency) = cycles per second (1 Hz = 1 cycle/sec) A 2GHz clock has a cycle time of¡hÙ’ " ;cgÊ(þ*cgÊ(þKcª Ù óŸ¨Measuring Time¡c(ª  Ÿ >If you re lucky, you can count clock cycles directly; some CPUs have a built-in counter which increments every clock cycle. If you re not, you have to use a slower clock. Most systems have extra hardware which generates a regular tick; many operating systems will count these ticks for you. Timing accuracy limited by the resolution of the clock  you get less accurate readings off a 1Hz clock than a 1MHz clock!¡j|’ " x’ " (§’ " x’ " ({’ " x cª   óŸ¨Cycles and Instructions¡c$ª  Ÿ àIn almost all processors, a single instruction (executing one line of assembly code) requires more than one clock cycle. Either: - One instruction must finish before the next can begin - Consecutive instructions may overlap ( pipelining ) In most processors, different types of instructions may take different numbers of cycles (e.g., integer vs. floating point) ¡‚�’ " “ " 9“ -“ -8“ -|’ " “ " qcªp  óŸ¨ Relating cycles and Instructions¡!P!c(ª ! Ÿ ŠSo we can add the following to our vocabulary: Cycles per instruction (CPI)  smaller is better Instruction per cycle (IPC) bigger is better If the cycles to execute one instruction vary depending on the instruction, then the average CPI or IPC of a program will depend on how many of each type of instruction is executed.¡°01’ " ’ " ä’ " 0ccgÊ(þ.cgÊ(þÊcª F óŸ¨ Clock, CPI and Instruction Count¡!P!c(ª ! Ÿ ô Clock rate - Hardware technology and organization CPI - Instruction set architecture Instruction - Instruction set architecture and count compiler technology - CPI should be measured, instead of check  Manuals Why? ( affected by many factors, e.g Cache/memory, etc.) - The most important is time : lower inst. count may increase instruction clock cycle time ¡ºâF™c gÿþ+c gÿþ"c gÿþcgÿþÛcª z óŸ¨Example¡c(ª  Ÿ¨™ 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?¡šxšcª ™ óŸ¨Answer¡c(ª  Ÿ¨p Or you can work backwards from a known execution times and clock rate to calculate the CPI for a given program.¡qZqcª p ó;5Ÿ¨How to Improve the Performance?¡ P c(ª  Ÿ¨”Reduce the number of instructions to execute Increase the number of instructions per cycle Concurrent execution of instructions Increase clock rate¡˜-’ " ’ " (.’ " %’ " ’ " .c.c%ccª • ó4.Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨‰ Sometimes it is useful in designing the CPU to calculate the number of total CPU clock cycles as CPU clock cycles = (CPIi * Ii)¡fŠx‚ckçÿckçÿcª ‰ ó5/Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨ Where Ii represents number of times instruction of type i is executed in a program and CPIi represents the average number of clock cycles for instruction of type i. This form can be used to express CPU time as CPU time =( (CPIi * Ii))/clock rate¡xckçÿ0cc!ckçÿ„ccckçÿckçÿcc cª  ó60Ÿ¨CPI Should Be Measured¡ g(ª  Ÿ¨¬ CPI should be measured and not just calculated from a table in the back of a reference manual Always bear in mind that the real measure of computer performance is time. ¡^_x2Mxcgÿþ–cª ¬ óŸ¨Hardware-Oriented Metrics¡c(ª  Ÿ "Clock rate and IPC are often combined into various figures of merit: MIPS (Millions of Instructions Per Second)  pronounced  mips MOPS (Millions of Operations Per Second)  pronounced  mops MFLOPS (Millions of Floating-point Operations Per Second)  pronounced  megaflops and sometimes written  megaFLOPS Replace first letter with K (kilo), G (giga), T (tera), P (peta), etc., as appropriate. ¡xE(ñ’ " x’ " 2Z“ " FcgÊ(þ;cgÊ(þ9cgÊ(þc‰cc cccccc cª ’ óŸ¨'Problems with Hardware-Oriented Metrics¡(P(c(ª ( Ÿ Processors with different ISAs may require a different number of instructions to perform the same task, so MIPS hard to compare - MOPS and MFLOPS are a somewhat better measure - How do you count floating-point divides? Vendors usually report  peak rates¡f€’ " ’ " 2]“ " x’ " 2$’ " cª  ó"Ÿ¨MIPS Calculation¡Pc(ª  Ÿ¨| One alternative to time as the metric is MIPS, or million instructions per second. For a given program, MIPS is simply ¡nx(<*cgÿþNckª | ó*$Ÿ¨Limitations of MIPS¡c(ª  Ÿ¨-Meaningful only for comparing machines with same ISA, same program, and same input Instruction capability not considered -May vary inversely with performance! Instruction count is an absolute number without considering the frequency of each instruction class¡zTx&x&xdxTc&c&cd c ª  ó Ÿ¨"MIPS - What May Go Wrong with It ?¡##c(ª&    Ÿ¨  A number of popular measures have been adopted in the quest for a standard measure of computer performance, with the result that a few innocent terms have been twisted from their well-defined environment and forced into a service for which they were never intended.¡B x‚cgÿþucª   ó93Ÿ¨"Misleading Performance Measurement¡##c(ª # Ÿ¨:-MIPS=instruction count/(execution time*106) MIPS1= MIPS2=¡¨-*ckcckçÿckçÿcª ; ó!Ÿ¨$Key: Execution Time of Real Programs¡%P%c(ª % Ÿ ` The authors position is that the only consistent and reliable measure of performance is the execution time of real programs, and that all proposed alternatives to time as the metric or to real programs as the items measured have eventually led to misleading claims or even mistakes in computer design. ¡d1^cgÿþcgÿþ´cª 0 ó& Ÿ¨ What is MIPS?¡c(ª  Ÿ Ò Meaningless Indication of Processor Speed - Bob Estall Computer, 1987¡N/;P<cc cª i ó'!Ÿ¨&MIPS Is Not A Multidimensional Measure¡'P'c(ª ' Ÿ |A computer system is multidimensional - therefore should be measured by some  vector ; MIPS is a scalar - measures only one dimension; MIPS is a very useful measure within it s dimension.¡dW’ " ’ " (1’ " ’ " (5’ " ¿cª ¿ êîï € 0 <ð4ð„ðÌð( ð ð„ðÆ ð„ 3 ðr€øÄ« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?? ˆð‡©ÉWðà  «  ð žðÆ ð„ 3 ðr€ÐÅ« �«g‚Ö³ƒ«g„Ö³…†‡ˆ‰Š‹¿¿ÿ ?@ ˆð�¹ð( ðà «  ð žðH ð„ ƒ ð0�ƒ“ŽŸ‹”Þ½h¿ÿ ?ð ÿÿÿ–––Ì™33ÌÌÌÿ²²²ˆ�Šyº___PPT10‹Y+Dñ='ñ þÿÿÿÿ=ñ @Bñ +rD£ [õÙ £x;Å1èõ_é(€à˜` ò”/È 0ÒÕÈ·DTimes New RomanT©T©Xê‘Ü–¾ 0Ü–Õ·DTahomaew RomanT©T©Xê‘Ü–¾ 0Ü–Õ ·DWingdingsRomanT©T©Xê‘Ü–¾ 0Ü–Õ0·D°e0} þÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÕÍÕœ.“—+,ù®0lˆ�¨¸ÀÈÐ Ø àè ðø  ¨On-screen ShowUDelåf! (Times New RomanTahoma Wingdings мšÃ÷ówArialSymbol BlueprintSlide 1 Reading List PerformanceConflicting GoalsWhy Study Performance?Summary of MetricsLatency vs. ThroughputPerformance Expressed as Time)Choosing a Time-Based Performance MetricThe Nature of Execution TimeIllustration of Execution TimeCPU Time vs. Latency)Application Metrics vs. Hardware Metrics Clock CyclesMeasuring TimeCycles and Instructions!Relating cycles and Instructions!Clock, CPI and Instruction CountExampleAnswer How to Improve the Performance? Weighted CPI Weighted CPICPI Should Be MeasuredHardware-Oriented Metrics(Problems with Hardware-Oriented MetricsMIPS CalculationLimitations of MIPS#MIPS - What May Go Wrong with It ?#Misleading Performance Measurement%Key: Execution Time of Real ProgramsWhat is MIPS?'MIPS Is Not A Multidimensional Measure  Fonts UsedDesign Template Slide Titles!ö$_À‘ãÁf ôÚ0Guang R. GaoGuang R. Gn, so bigger is better¡B³’ " XcZãcª ³ ó Ÿ¨The Nature of Execution Time¡c(ª  Ÿ ´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 kernel on behalf of the user code (e.g., opening files) Other: Time when the system is idle or executing other programs Use  time and  top commands in Unix to see these¡8>n@3Bc6c cdccAcccc cª [ ó Ÿ¨Illustration of Execution Time¡c(ª  Ÿ f Real or  wall clock time is the sum of all three¡44cª 3 ó82Ÿ¨CPU Time vs. Latency¡c(ª  Ÿ¨M- The time CPU spends for computing the given task, not including the time waiting for I/O or running other programs. Also known as CPU execution time -Consists of user CPU time and system CPU time. User CPU time: Total time CPU spends in the task System CPU time: Total time CPU spends in operating system for the sake of the task.¡vv"0“ -†vc"c0c† c ª N ó Ÿ¨(Application Metrics vs. Hardware Metrics¡)P)c(ª ) Ÿ¨± How do you relate the application-oriented performance measurements to what is going on inside the machine? Most processors are synchronous, so we can use the clock as a basis.¡@²x˜cccª ± óŸ¨ Clock Cycles¡ c(ª  Ÿ °Clock  ticks refer to clock edges (rising or falling) Cycle time (period) = time between ticks = seconds per cycle Clock rate (frequency) = cycles per second (1 Hz = 1 cycle/sec) A 2GHz clock has a cycle time of¡hÙ’ " ;cgÊ(þ*cgÊ(þKcª Ù óŸ¨Measuring Time¡c(ª  Ÿ >If you re lucky, you can count clock cycles directly; some CPUs have a built-in counter which increments every clock cycle. If you re not, you have to use a slower clock. Most systems have extra hardware which generates a regular tick; many operating systems will count these ticks for you. Timing accuracy limited by the resolution of the clock  you get less accurate readings off a 1Hz clock than a 1MHz clock!¡j|’ " x’ " (§’ " x’ " ({’ " x cª   óŸ¨Cycles and Instructions¡c$ª  Ÿ àIn almost all processors, a single instruction (executing one line of assembly code) requires more than one clock cycle. Either: - One instruction must finish before the next can begin - Consecutive instructions may overlap ( pipelining ) In most processors, different types of instructions may take different numbers of cycles (e.g., integer vs. floating point) ¡‚�’ " “ " 9“ -“ -8“ -|’ " “ " qcªp  óŸ¨ Relating cycles and Instructions¡!P!c(ª ! Ÿ ŠSo we can add the following to our vocabulary: Cycles per instruction (CPI)  smaller is better Instruction per cycle (IPC) bigger is better If the cycles to execute one instruction vary depending on the instruction, then the average CPI or IPC of a program will depend on how many of each type of instruction is executed.¡°01’ " ’ " ä’ " 0ccgÊ(þ.cgÊ(þÊcª F óŸ¨ Clock, CPI and Instruction Count¡!P!c(ª ! Ÿ ô Clock rate - Hardware technology and organization CPI - Instruction set architecture Instruction - Instruction set architecture and count compiler technology - CPI should be measured, instead of check  Manuals Why? ( affected by many factors, e.g Cache/memory, etc.) - The most important is time : lower inst. count may increase instruction clock cycle time ¡ºâF™c gÿþ+c gÿþ"c gÿþcgÿþÛcª z óŸ¨Example¡c(ª  Ÿ¨™ 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?¡šxšcª ™ óŸ¨Answer¡c(ª  Ÿ¨p Or you can work backwards from a known execution times and clock rate to calculate the CPI for a given program.¡qZqcª p ó;5Ÿ¨How to Improve the Performance?¡ P c(ª  Ÿ¨”Reduce the number of instructions to execute Increase the number of instructions per cycle Concurrent execution of instructions Increase clock rate¡˜-’ " ’ " (.’ " %’ " ’ " .c.c%ccª • ó4.Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨‰ Sometimes it is useful in designing the CPU to calculate the number of total CPU clock cycles as CPU clock cycles = (CPIi * Ii)¡fŠx‚ckçÿckçÿcª ‰ ó5/Ÿ¨ Weighted CPI¡ P c(ª  Ÿ¨ Where Ii represents number of times instruction of type i is executed in a program and CPIi represents the average number of clock cycles for instruction of type i. This form can be used to express CPU time as CPU time =( (CPIi * Ii))/clock rate¡xckçÿ0cc!ckçÿ„ccckçÿckçÿcc cª  ó60Ÿ¨CPI Should Be Measured¡ g(ª  Ÿ¨¬ CPI should be measured and not just calculated from a table in the back of a reference manual Always bear in mind that the real measure of computer performance is time. ¡^_x2Mxcgÿþ–cª ¬ óŸ¨Hardware-Oriented Metrics¡c(ª  Ÿ "Clock rate and IPC are often combined into various figures of merit: MIPS (Millions of Instructions Per Second)  pronounced  mips MOPS (Millions of Operations Per Second)  pronounced  mops MFLOPS (Millions of Floating-point Operations Per Second)  pronounced  megaflops and sometimes written  megaFLOPS Replace first letter with K (kilo), G (giga), T (tera), P (peta), etc., as appropriate. ¡xE(ñ’ " x’ " 2Z“ " FcgÊ(þ;cgÊ(þ9cgÊ(þc‰cc cccccc cª ’ óŸ¨'Problems with Hardware-Oriented Metrics¡(P(c(ª ( Ÿ Processors with different ISAs may require a different number of instructions to perform the same task, so MIPS hard to compare - MOPS and MFLOPS are a somewhat better measure - How do you count floating-point divides? Vendors usually report  peak rates¡f€’ " ’ " 2]“ " x’ " 2$’ " cª  ó"Ÿ¨MIPS Calculation¡Pc(ª  Ÿ¨| One alternative to time as the metric is MIPS, or million instructions per second. For a given program, MIPS is simply ¡nx(<*cgÿþNckª | ó*$Ÿ¨Limitations of MIPS¡c(ª  Ÿ¨-Meaningful only for comparing machines with same ISA, same program, and same input Instruction capability not considered -May vary inversely with performance! Instruction count is an absolute number without considering the frequency of each instruction class¡zTx&x&xdxTc&c&cd c ª  ó Ÿ¨"MIPS - What May Go Wrong with It ?¡##c(ª # Ÿ¨  A number of popular measures have been adopted in the quest for a standard measure of computer performance, with the result that a few innocent terms have been twisted from their well-defined environment and forced into a service for which they were never intended.¡B x‚cgÿþucª   ó93Ÿ¨"Misleading Performance Measurement¡##c(ª # Ÿ¨:-MIPS=instruction count/(execution time*106) MIPS1= MIPS2=¡¨-*ckcckçÿckçÿcª ; ó!Ÿ¨$Key: Execution Time of Real Programs¡%P%c(ª % Ÿ ` The authors position is that the only consistent and reliable measure of performance is the execution time of real programs, and that all proposed alternatives to time as the metric or to real programs as the items measured have eventually led to misleading claims or even mistakes in computer design. ¡d1^cgÿþcgÿþ´cª 0 ó& Ÿ¨ What is MIPS?¡c(ª  Ÿ Ò Meaningless Indication of Processor Speed - Bob Estall Computer, 1987¡N/;P<cc cª i ó'!Ÿ¨&MIPS Is Not A Multidimensional Measure¡'P'c(ª ' Ÿ |A computer system is multidimensional - therefore should be measured by some  vector ; MIPS is a scalar - measures only one dimension; MIPS is a very useful measure within it s dimension.¡dW’ " ’ " (1’ " ’ " (5’ " ¿cª ¿ êr´õ!Ù�±f;Å1Root Entryÿÿÿÿÿÿÿÿ��d›Oφꪹ)è0�à•ØÅg€PicturesÿÿÿÿÿÿÿÿCurrent UserÿÿÿÿÿÿÿÿÿÿÿÿDSummaryInformation(ÿÿÿÿÚÈ8Býÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ  !"#$%&'()*+,-./0123456789:;<=øÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abþÿÿÿfýÿÿÿþÿÿÿþÿÿÿhijþÿÿÿýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ þÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿPowerPoint Document(ÿÿÿÿÿÿÿÿÿÿÿÿåfDocumentSummaryInformation8ÿÿÿÿÿÿÿÿäÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿþÿÕÍÕœ.“—+,ù®DÕÍÕœ.“—+,ù®°lˆ�¨¸ÀÈÐ Ø àè ðø  ¨On-screen ShowUDelåf! (Times New RomanTahoma Wingdings мšÃ÷ówArialSymbol BlueprintSlide 1 Reading List PerformanceConflicting GoalsWhy Study Performance?Summary of MetricsLatency vs. ThroughputPerformance Expressed as Time)Choosing a Time-Based Performance MetricThe Nature of Execution TimeIllustration of Execution TimeCPU Time vs. Latency)Application Metrics vs. Hardware Metrics Clock CyclesMeasuring TimeCycles and Instructions!Relating cycles and Instructions!Clock, CPI and Instruction CountExampleAnswer How to Improve the Performance? Weighted CPI Weighted CPICPI Should Be MeasuredHardware-Oriented Metrics(Problems with Hardware-Oriented MetricsMIPS CalculationLimitations of MIPS#MIPS - What May Go Wrong with It ?#Misleading Performance Measurement%Key: Execution Time of Real ProgramsWhat is MIPS?'MIPS Is Not A Multidimensional Measure  Fonts UsedDesign Template Slide Titles!4 ö$_À‘ãÁf ôÚ0Guang R. GaoGuang R. GaoÕÍÕœ.“—+,ù®0lˆ$€,° ÈÐ Ø àè ðø  ¨On-screen ShowUDel´! (Times New RomanTahoma Wingdings мšÃ÷ówArialSymbol BlueprintSlide 1 Reading List PerformanceConflicting GoalsWhy Study Performanc