# Measure of Performance

The Speed-Up is the ratio of sequential time $T\left(1\right)$ and the parallel time on $P$ processors $T\left(P\right)$ :

$$S\left(P\right)=T\left(1\right)/T\left(P\right)$$

The efficiency is defined as:

$$E\left(P\right)=S\left(P\right)/P\text{\hspace{0.17em}};\text{\hspace{0.17em}}E\left(P\right)\le 1$$

The Amdahl’s law for multitasking is used to determine the speed-up:

$$S\left(P\right)=\frac{\left({T}_{Seq}+{T}_{Par}\right)}{\left({T}_{Seq}+\raisebox{1ex}{${T}_{Par}$}\!\left/ \!\raisebox{-1ex}{$P$}\right.\right)}$$

Where, ${T}_{Par}$ and ${T}_{Seq}$ are the computation times respectively related to parallel and non-parallel parts. As ${T}_{Seq}+{T}_{Par}=1$ , write:

$$S\left(P\right)=\frac{1}{\left({T}_{Seq}+\raisebox{1ex}{${T}_{Par}$}\!\left/ \!\raisebox{-1ex}{$P$}\right.\right)}$$

The limit value can be obtained when the process number tends to infinite:

$$S\left(\infty \right)=\frac{1}{{T}_{Seq}}$$

Table 1 provides the Speed-Up in function of number of processors and the rate of
parallelization in the program. It can be seen that if the rate of parallelization is less
95%, the computation acceleration will not be greater than 20; however, the number of
processors. This means that to obtain a good scalability of a code, at least 99% of the
program must be parallel.

Process Number Seq / P |
2 | 4 | 8 | 16 | 32 | 64 | 128 | $\infty $ |
---|---|---|---|---|---|---|---|---|

100% | 2.0 | 4.0 | 8.0 | 16.0 | 32.0 | 64.0 | 128. | $\infty $ |

99% | 2.0 | 3.9 | 7.5 | 13.9 | 24.4 | 39.3 | 56.4 | 100. |

98% | 2.0 | 3.8 | 7.0 | 12.3 | 19.8 | 28.3 | 36.2 | 50.0 |

97% | 1.9 | 3.7 | 6.6 | 11.0 | 16.5 | 22.1 | 26.6 | 33.3 |

96% | 1.9 | 3.6 | 6.3 | 10.0 | 14.3 | 18.2 | 21.1 | 25.0 |

95% | 1.9 | 3.5 | 5.9 | 9.1 | 12.5 | 15.4 | 17.4 | 20.0 |

90% | 1.8 | 3.0 | 4.7 | 6.4 | 7.8 | 8.7 | 9.3 | 10.0 |

50% | 1.3 | 1.6 | 1.8 | 1.9 | 1.9 | 2.0 | 2.0 | 2.0 |