JJ プログラム仙人修行日誌

2024/04/20 からは、プログラム仙人修行の日誌を書いてます。

 マルチプロセッサによる並列処理で得られる高速化率(単一プロセッサのとき
と比べた倍率)E を,次の式によって評価する。r = 0.9 のアプリケーションの
高速化率が r =0.3 のものの 3 倍となるのは,プロセッサが何台のときか。

     1
E = ───────
  1 - r + (r/n)

ここで、
n : プロセッサの台数(1≦n)
r : 対象とする処理のうち,並列化が可能な部分の割合(0≦r≦1)
とし,並列化に伴うオーバヘッドは考慮しないものとする。

 ア 3

 イ 4

 ウ 5

 エ 6

■キーワード■ CPUの台数計算

■解答■
  テクニカルエンジニア(ネットワーク)午前平成15年問07

 エ 6

> r=0.9のときの高速化率をE1、r=0.3のときの高速化率をE2とすると、
> E1:E2=3:1
> E1とE2に上記式を代入すると
> 1/{1-0.9+(0.9/n)}:1/{1-0.3+(0.3/n)}=3:1
> 1/{1-0.9+(0.9/n)}=3/{1-0.3+(0.3/n)}
> 1-0.3+(0.3/n)=3{1-0.9+(0.9/n)}
> 0.4n=2.4
> n=6

 どうもありがとうございました。

> n=3 の場合
> r=0.3 1/(1-0.3+(0.3/3)) = 1/(0.7+0.1) = 1/0.8
> r=0.9 1/(1-0.9+(0.9/3)) = 1/(0.1+0.3) = 1/0.4
>
> n=4 の場合
> r=0.3 1/(1-0.3+(0.3/4)) = 1/(0.7+0.075) = 1/0.775
> r=0.9 1/(1-0.9+(0.9/4)) = 1/(0.1+0.225) = 1/0.325
>
> n=5の場合
> r=0.3 1/(1-0.3+(0.3/5)) = 1/(0.7+0.06) = 1/0.76
> r=0.9 1/(1-0.9+(0.9/5)) = 1/(0.1+0.18) = 1/0.28
>
> n=6 の場合
> r=0.3 1/(1-0.3+(0.3/6)) = 1/(0.7+0.05) = 1/0.75
> r=0.9 1/(1-0.9+(0.9/6)) = 1/(0.1+0.15) = 1/0.25

 どうもありがとうございました。