平成21年度 秋期 午前Ⅱ 問22
システム構成要素
マルチプロセッサに関する問題
1台のCPUの性能を1とするとき,そのCPUをn台用いたマルチプロセッサの性能Pが,
P=n/(1+(n−1)a)
で表されるとする。ここで,aはオーバヘッドを表す定数である。例えば,a=0.1,n=4とすると,P≒3なので,4台のCPUからなるマルチプロセッサの性能は約3になる。この式で表されるマルチプロセッサの性能には上限があり,nを幾ら大きくしてもある値以上には大きくならない。a=0.1の場合,その値は幾らか。
- ア5
- イ10
- ウ15
- エ20
答えと解説を見る
✓ これが正解イ10
解説
nを大きくすると、性能Pは1/a=10に近づきます。
式 P=n/(1+(n−1)a) で n を限りなく大きくしたときの値を考えます。分母と分子を n で割ると、P=1/(1/n+a−a/n) となります。n が大きくなるにつれて 1/n と a/n はどちらも 0 に近づくので、P は 1/a に近づきます。a=0.1 なら上限は 1/0.1=10 で、正解の値と一致します。実際に n=4 では 4/1.3≒3.1、n=9 では 9/1.8=5、n=100 では 100/10.9≒9.2 と、n を増やしても 10 には届きません。CPU を増やすほど一台当たりのオーバヘッドが積み重なり、性能の伸びが頭打ちになる、というマルチプロセッサの考え方を式で確かめる問です。
ほかの選択肢はなぜ違うのか
- ア5:5 は、CPU を9台にしたときの性能です(9/(1+8×0.1)=9/1.8=5)。n をさらに増やせば性能はまだ伸び、n=100 では約9.2 になるので、5 は上限ではありません。
- ウ15:15 は、上限の 10 を超えています。この式では n をどれだけ大きくしても P は 1/0.1=10 に届かないので、15 という性能にはなりません。この式の a=0.1 からは導けない値です。
- エ20:20 は 1/a の2倍で、上限の 10 を大きく超えています。P=n/(1+0.1(n−1)) は常に 10 より小さく、20 には到達しません。この式と a=0.1 からは導けない値です。
出典:平成21年度 秋期 システムアーキテクト試験 午前Ⅱ 問22
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)