For this problem, suppose we have the following dynamic instruction profile for
ID: 2078988 • Letter: F
Question
For this problem, suppose we have the following dynamic instruction profile for a benchmark application. The cycle count for each instruction type is listed in below table. Type: Instruction Count Cycles ----------------------------------------------------------- Load 426,000,000 ??? Store 184,000,000 7 ALU 662,000,000 6 Set 104,000,000 4 Conditional Branches 52,000,000 6 Unconditional Branches 328,000,000 5 Jumps 244,000,000 4 ----------------------------------------------------------- a. Compute the number of cycles for Load instructions given that the CPI is 6.006 b. Suppose a hardware improvement reduces the cycle count for ALU instructions from 6 to 4 cycles without increasing the cycle time. What is the new CPI? How much faster is the improved machine over the original machine for this benchmark? c. For the ORIGINAL design, assume the clock cycle time is 6 nanoseconds. What is the total execution time for the benchmark? (in seconds) d. Assume that by adding a new instruction, you are able to reduce ALU integer instructions. In order to increase the speedup by 10%, as compared to part (b), by how much should the ALU Integer instructions be reduced from the ORIGINAL design, with the assumption that the new ALU integer instructions would still take 6 cycles to execute
Explanation / Answer
a. Type Instruction count Cycles Instruction count * cycles Load 426,000,000.00 x Store 184,000,000.00 7.00 1,288,000,000.00 ALU 662,000,000.00 6.00 3,972,000,000.00 Set 104,000,000.00 4.00 416,000,000.00 Conditional Branches 52,000,000.00 6.00 312,000,000.00 Unconditional Branhes 328,000,000.00 5.00 1,640,000,000.00 Jumps 244,000,000.00 4.00 976,000,000.00 Total 2,000,000,000.00 8,604,000,000.00 Given: CPI = 6.006 426000000x+1288000000+3972000000+416000000+312000000+1640000000+976000000/ ( Total instruction count ) = 6.006 (426000000x + 8604000000 ) / ( 2000000000) = 6.006 x = 8.00 Therefore the cycles of Load instruction = 8 b. ALU instruction cycle is reduced from 6 cycles to 4 cycles. The new table would be: Type Instruction count Cycles Instruction count * cycles Load 426,000,000.00 8.00 3,408,000,000.00 Store 184,000,000.00 7.00 1,288,000,000.00 ALU 662,000,000.00 4.00 2,648,000,000.00 Set 104,000,000.00 4.00 416,000,000.00 Conditional Branches 52,000,000.00 6.00 312,000,000.00 Unconditional Branhes 328,000,000.00 5.00 1,640,000,000.00 Jumps 244,000,000.00 4.00 976,000,000.00 Total 2,000,000,000.00 10,688,000,000.00 CPI = Instruction count * cycles / Instruction count CPI = 5.34 New CPI is 5 The % age improvement : ( Original CPI - new CPI ) / Original CPI * 100 11.09 The % age improvement : 11.09% c. Clock cyle time : 6 nanoseconds Total execution time for original design : Instruction count * cycles * clock cycle time 72.07 Total execution time 72.072 seconds d Speed up should be 10% as compared with b. The CPI obtained in b was 5.34. Therefore, with a 10% improvement, the new CPI would be (Old CPI - New CPI )/ ( old CPI ) = 10 /100 New CPI = 5.34 - ( 5.34*10/100 ) 4.81 ALU takes 6 cycles. Let xbe the reduction in no. of cycles from the previous cycles. Type Instruction count Cycles Instruction count * cycles Load 426,000,000.00 8.00 3,408,000,000.00 Store 184,000,000.00 7.00 1,288,000,000.00 ALU 662000000-x 6.00 6(662000000-x) Set 104,000,000.00 4.00 416,000,000.00 Conditional Branches 52,000,000.00 6.00 312,000,000.00 Unconditional Branhes 328,000,000.00 5.00 1,640,000,000.00 Jumps 244,000,000.00 4.00 976,000,000.00 Total 2,000,000,000.00 12,012,000,000.00 CPI = ( Sum of Instruction count * cycles ) / ( Total Instruction Count ) 4.81= (E62-6x)/(C62 -x) x = 2010X10e6
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.