asked 45.0k views
1 vote
Consider three different processors,P1,P2 and P3 executing the same instruction set. P1 has a 3GHz clock rate and a CPI of 1.5. P2 has a 2.5 GHz clock rate and a CPI of 1.0. P3 has a 4.0 GHz clock rate and has a CPI of 2.2. Which processor has the highest performance expressed in instructions per second? If the processor each execute a program in 10 seconds, find the number of cycles and the number of instructions. We are trying to reduce the execution time by 30%, which leads to an increase of 20% in the CPI. What clock rate should we have to get this time reduction?

asked
User Oscar
by
8.2k points

1 Answer

5 votes

Answer:

Step-by-step explanation:

To determine which processor has the highest performance expressed in instructions per second (IPS), we can calculate the IPS for each processor using the following formula:

IPS = Clock Rate (in Hz) / CPI

Let's calculate the IPS for each processor:

For P1:

Clock Rate = 3 GHz = 3,000,000,000 Hz

CPI = 1.5

IPS(P1) = 3,000,000,000 Hz / 1.5 = 2,000,000,000 IPS

For P2:

Clock Rate = 2.5 GHz = 2,500,000,000 Hz

CPI = 1.0

IPS(P2) = 2,500,000,000 Hz / 1.0 = 2,500,000,000 IPS

For P3:

Clock Rate = 4.0 GHz = 4,000,000,000 Hz

CPI = 2.2

IPS(P3) = 4,000,000,000 Hz / 2.2 = 1,818,181,818 IPS (approximately)

Based on the calculated IPS values, P2 has the highest performance expressed in instructions per second.

Next, let's find the number of cycles and the number of instructions executed by each processor when they execute a program in 10 seconds. We can use the following formula:

Execution Time (in seconds) = (Number of Cycles / Clock Rate) * CPI

Rearranging the formula, we can find the number of cycles:

Number of Cycles = (Execution Time * Clock Rate) / CPI

Let's calculate the number of cycles for each processor:

For P1:

Execution Time = 10 seconds

Clock Rate = 3 GHz = 3,000,000,000 Hz

CPI = 1.5

Number of Cycles(P1) = (10 s * 3,000,000,000 Hz) / 1.5 = 20,000,000,000 cycles

For P2:

Execution Time = 10 seconds

Clock Rate = 2.5 GHz = 2,500,000,000 Hz

CPI = 1.0

Number of Cycles(P2) = (10 s * 2,500,000,000 Hz) / 1.0 = 25,000,000,000 cycles

For P3:

Execution Time = 10 seconds

Clock Rate = 4.0 GHz = 4,000,000,000 Hz

CPI = 2.2

Number of Cycles(P3) = (10 s * 4,000,000,000 Hz) / 2.2 = 18,181,818,181 cycles (approximately)

Now, let's calculate the number of instructions for each processor using the formula:

Number of Instructions = Number of Cycles / CPI

For P1:

Number of Instructions(P1) = 20,000,000,000 cycles / 1.5 = 13,333,333,333 instructions (approximately)

For P2:

Number of Instructions(P2) = 25,000,000,000 cycles / 1.0 = 25,000,000,000 instructions

For P3:

Number of Instructions(P3) = 18,181,818,181 cycles / 2.2 = 8,264,008,264 instructions (approximately)

Now, let's consider reducing the execution time by 30%, which leads to an increase of 20% in the CPI. Let's call the new clock rate R.

The new CPI for each processor will be:

For P1 (20% increase in CPI): New CPI(P1) = 1.5 * 1.2 = 1.8

For P2 (20% increase in CPI): New CPI(P2) = 1.0 * 1.2 = 1.2

For P3 (20% increase in CPI): New CPI(P3) = 2.2 * 1.2 = 2.64

We want to find the new clock rate (R) that achieves the reduced execution time. The formula for execution time is:

New Execution Time = (Number of Cycles / R) * New CPI

We know that we want to reduce the execution time by 30%, which means the new execution time will be 70% of the original execution time.

Let's use this information to calculate the new clock rate (R) for each processor:

For P1:

New Execution Time(P1) = 0.7 * 10 seconds = 7 seconds

New CPI(P1) = 1.8

Number of Cycles(P1) = (7 s * R) / 1.8

For P2:

New Execution Time(P2) = 0.7 * 10 seconds = 7 seconds

New CPI(P2) = 1.2

Number of Cycles(P2) = (7 s * R) / 1.2

For P3:

New Execution Time(P3) = 0.7 * 10 seconds = 7 seconds

New CPI(P3) = 2.64

Number of Cycles(P3) = (7 s * R) / 2.64

Now, we can solve for the new clock rate (R) for each processor:

For P1:

(7 s * R) / 1.8 = Number of Cycles(P1) = 20,000,000,000 cycles

7s * R = 20,000,000,000 cycles * 1.8

7s * R = 36,000,000,000 cycles

R = (36,000,000,000 cycles) / 7s ≈ 5.14 GHz

For P2:

(7 s * R) / 1.2 = Number of Cycles(P2) = 25,000,000,000 cycles

7s * R = 25,000,000,000 cycles * 1.2

7s * R = 30,000,000,000 cycles

R = (30,000,000,000 cycles) / 7s ≈ 4.29 GHz

For P3:

(7 s * R) / 2.64 = Number of Cycles(P3) = 18,181,818,181 cycles

7s * R = 18,181,818,181 cycles * 2.64

7s * R = 48,000,000,000 cycles

R = (48,000,000,000 cycles) / 7s ≈ 6.86 GHz

So, to achieve a 30% reduction in execution time with a 20% increase in CPI, the required clock rates are approximately:

For P1: 5.14 GHz

For P2: 4.29 GHz

For P3: 6.86 GHz

answered
User Boggio
by
8.6k points