令和7年春期試験問題 午前問11
問11解説へ
マルチプロセッサによる並列処理で得られる高速化率(単一プロセッサのときと比べた倍率)Eを,次の式によって評価する。r=0.9のアプリケーションの高速化率がr=0.3のものの3倍となるのは,プロセッサが何台のときか。
E=11-r+rn
ここで,
n:プロセッサの台数(1≦n)
r:対象とする処理のうち,並列化が可能な部分の割合(0≦r≦1)
とし,並列化に伴うオーバーヘッドは考慮しないものとする。
E=11-r+rn
ここで,
n:プロセッサの台数(1≦n)
r:対象とする処理のうち,並列化が可能な部分の割合(0≦r≦1)
とし,並列化に伴うオーバーヘッドは考慮しないものとする。
- 3
- 4
- 5
- 6
広告
解説
プログラムには並列処理が可能な部分とそうでない部分が混在しています。マルチプロセッサによる並列処理では、並列処理が可能な部分が多いほどプロセッサ数の増加による高速化が望めます。つまり、同じプロセッサ台数でも並列化可能な部分の割合(r)によって高速化率は変化ということです。
本問では、①90%が並列化可能なプログラム(r=0.9)と、②30%が並列化可能なプログラム(r=0.3)を想定し、①の高速化率が、②の3倍となるプロセッサ数を問うています。プロセッサ数nを求めるには、設問の式にそれぞれrを代入したものを方程式にすればよいです(r=0.3のほうは3倍します)。
3×11-0.3+0.3/n=11-0.9+0.9/n
3×10.7+0.3/n=10.1+0.9/n
3×(0.1+0.9/n)=0.7+0.3/n
0.3+2.7/n=0.7+0.3/n
2.4/n=0.4
2.4=0.4n
6=n
以上の計算結果より、プロセッサが6台のとき条件を満たすことがわかります。したがって正解は「エ」です。
本問では、①90%が並列化可能なプログラム(r=0.9)と、②30%が並列化可能なプログラム(r=0.3)を想定し、①の高速化率が、②の3倍となるプロセッサ数を問うています。プロセッサ数nを求めるには、設問の式にそれぞれrを代入したものを方程式にすればよいです(r=0.3のほうは3倍します)。
3×11-0.3+0.3/n=11-0.9+0.9/n
3×10.7+0.3/n=10.1+0.9/n
3×(0.1+0.9/n)=0.7+0.3/n
0.3+2.7/n=0.7+0.3/n
2.4/n=0.4
2.4=0.4n
6=n
以上の計算結果より、プロセッサが6台のとき条件を満たすことがわかります。したがって正解は「エ」です。
広告