並列処理における通信遅延を理解する [終了]
質問
私は「コンピューター アーキテクチャ:「定量的アプローチ、第 5 版」で、350 ページの第 5 章の例を見ています。問題の例のスキャンを添付します。この例で彼らがどのように物事を行うかというロジックには、私は完全には従いません。
私の質問は次のとおりです。
- 0.3ns というサイクル時間はどこから来たのでしょうか?
- 200/0.3 はおよそ 666 サイクルです。私はこれに従います。ただし、CPI の方程式に当てはめると、意味がありません。0.2% (0.002) x 666 は 1.332 に等しく、1.2 ではありません。ここで何が起こっているのでしょうか?
- 彼らが「すべてのローカル参照を備えたマルチプロセッサは 1.7/0.5 = 3.4 倍高速である」と言っているのですが、それはどこから得ているのでしょうか?意味:与えられた情報のどこにも、ローカル通信が 2 倍高速であるという記述はありません。
助けていただければ幸いです。
解決
0.3ns というサイクル時間はどこから来たのでしょうか?
これは 3.3 GHz のクロックレートから来ています。1 / 3.3 GHz = 0.3ns。
200/0.3 はおよそ 666 サイクルです。私はこれに従います。ただし、CPI の方程式に当てはめると、意味がありません。0.2% (0.002) x 666 は 1.332 に等しく、1.2 ではありません。ここで何が起こっているのでしょうか?
あなたが正しいと思います。それは誤植のようです。そうあるべきだ
CPI = 0.5 + 1.33 = 1.83
彼らが「すべてのローカル参照を備えたマルチプロセッサは 1.7/0.5 = 3.4 倍高速である」と言っているのですが、それはどこから得ているのでしょうか?意味:与えられた情報のどこにも、ローカル通信が 2 倍高速であるという記述はありません。
ローカル通信が2倍速くなるなんてどこにも書いてない。彼らは、リモート参照が 0.2% のマルチプロセッサに対して計算した実効 CPI を、基本 CPI の 0.5 で割っています。これは、すべてのローカル参照を備えたマルチプロセッサが何倍高速であるかを示します。(もちろん 1.83/0.5 = 3.66 倍程度は速くなるはずです。)
所属していません StackOverflow