MacDTV.comの記事[ 2008.01.07 新Mac Pro、登場 ]にて、
システムバスの高速化 ... Mac Proのボトルネックは、FSBにあります。
と書きましたので、それも含めて、解説します。
FSBとは、フロントサイドバス。システムバスとも言います。CPUとメモリコントローラハブ(MCH)との間をつなぐインターフェースのこと。
話しは、初代Mac Pro(Quadコア)にさかのぼります。2007.02.09 2代目Mac Proは、まだ?? /その2 CPUの話しで書いたとおり、
初代Mac
Pro(Quadコア)の場合、
CPUは、Xeon 5100が2基。Xeon 5100には、1基あたり2コア搭載されているので、2コア×2基で、計4コア(Quadコア)。2つのコア間で教養可能な8MBのL2キャッシュが搭載されており(下図の金色の□部分)、出来る限りCPU内で処理できるデータ量を増やし、(L2キャッシュへのアクセスと比較すれば)低速なメモリへのアクセスを減らすような仕組みになっています。
また、 MCHは、5000Xが採用されました。
一方、3GHz 8コアMac Pro(旧モデル)では、
CPUは、Xeon 5300が2基。Xeon 5300には、1基あたり4コア搭載されているので、4コア×2基で計8コア。また、MCHは5000Xのまま変更されませんでした。
Xeon5100 WoodcrestとXeon 5300 Clovertownの違い Mac Proは、Dual CPUなので、ほんとはi5000メモリコントローラに2つのCPU(Xeon)が接続されますが、イラストでは簡略化して1CPUしか記載してありません。 |
Xeon
5300は、 ひとつのダイ(半導体)の上に「Xeon 5100を2個」 搭載したような構造をしています。
計4つのコアは、各々、他のコアのことに構わず自分勝手なことを計算していては大変なことにまりますから、どうしても"整合性"をとらねばなりません。"整合性をとる"とは、相手のコアが今どんな計算結果をはき出しているかを確認するということです。
1Aと1Bのペア、及び2Aと2Bのペアは、L2キャッシュを共用していますので、これらのペア内で"整合性をとる"際には、L2キャッシュにアクセスすれば、相手のコアが今どんな計算結果をはき出しているかを確認できます。
ところが、1Aと2A、1Aと2B、1Bと2A、1Bと2Bなど、キャッシュを共用していないペアの場合には、例えば、コア1Aとコア2A間で"整合性"をとる場合には、一旦CPUの外にまで出てメモリにアクセスしなくてはなりません。
で、.....やっと、FSBの話しが出てきます。お待たせしました.....、
このメモリアクセスの際に、FSB、すなわち、CPUとメモリコントローラハブ(MCH)との間をつなぐインターフェースが重要です。
初代Mac
Pro(Quadコア)でも、3GHz
8コアMac Pro(旧モデル)でも、MCHは5000Xのまま変更されませんでした。
すなわち、Xeon 5400ではコア数が4から8へと増加し計算能力が向上したにもかかわらず、FSBのスループットはXeon
5300(4コア)時代と同じ1333MHzのまま、ということなのです。冒頭に、Mac ProのボトルネックはFSBにある、と書いたのは、こういうことなのでした。
さて、今回登場したXeon 5400 Mac Proでは、MCHも5400に変更されたので、FSBも1600MHzへと向上しています。Xeon 5300+i5000でのボトルネックに、今回、改善の手が施されることになりましたが、果たして。
Xeon5300 WoodcrestとXeon 5400 Clovertownの違い |
1333MHzが1600MHzへと1.2倍向上したわけですが、「1.2倍の向上にすぎない」のか「1.2倍もの向上」なのか、あるいは、実際にボトルネックの解消につながるほどの向上なのかどうか、パフォーマンスの情報が楽しみではあります。
この記事のURL: http://www.macdtv.com/Macunamatata/Articles/20080108/index.html