Question: In this problem, we are going to study how adding increasing number of cores in a system in a practical system modifies its speedup. Assume

In this problem, we are going to study how adding increasing number of cores in a system in a practical system modifies its speedup. Assume a single core has the following CPls for each class of instructions: 1. Load/Store(L/S)=122. Arithmetic=13. Branch=5 Each core runs on a 2GHz clock frequency Also assume that we are executing a program in our system comprising the following number of instructions: 1. Load/Store(L/S)=1.28E9(this is the same as writing 1.28*109)2. Arithmetics 2.56E93. Branch=2.56E8 Now, assume that, as the program is parallelized to run over multiple cores, the number of arithmetic and load/store instructions per core is divided by 0.7 xp (where p is the number of cores) but the number of branch instructions per processor remains the same. So for example if p=2, we divide the arithmetic and L/S instructions per core by 0.7*2=1.4 each. (Ideally, we would divide the above parallelable instructions just by p; but sometimes in real life, even the same class of instructions cannot be fully parallelized, hence the divide by 0.7* p instead in this example) A) Find the total execution time for this program on p=1,2 and 4 cores, and show the relative speedup of the 2 and 4 cores result relative to the single core result. Accordingly, fill up the values in the table provided below (5pts) # arith inst. # L/S inst. # branch inst. cycles ex. t

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!