連載108回でも少し触れた話だが、2011年第3四半期中にはAMDから、「Bulldozer」アーキテクチャーを搭載した「Zambezi」こと、「AMD FX」シリーズが投入される予定だ。今回はこのBulldozerアーキテクチャーの内容について解説しよう。
2コアでFPUを共有する
Bulldozerアーキテクチャー
Bulldozerの特徴は、2つのCPUコアをモジュールという単位でまとめ、FPUはモジュール単位で1つを共用する構造になっていることだ。ちょっとわかりにくいので、一般的なCPUコアの構造と比較してみた。図1は共有2次キャッシュを持つ一般的なデュアルコアCPU(強いて言えばBobcatに近い構成)だ。これがBulldozerではどう変化したかを示したのが図2である。要点は以下のようになる。
- フロントエンドの1次命令キャッシュや命令TLB、フェッチ/デコードは2つのコアで共用する
- 整数演算のスケジューラー~実行ユニット、Load/Storeユニット(図では省略)、データTLBなどはコアごとに用意
- FPUはスケジューラーを含めて共用
こうした構成をとることについて、AMDはいくつかの理由を挙げている。まずは「ダイサイズの効率化」である。FPUブロックは浮動小数点演算を本格的に処理するようになったことで、大きなダイサイズを占めるようになった。ところが実際の使われ方を見ると、それがフルに使われることは極めて稀である。科学技術計算など一部の用途を除くと、ほとんどの場合FPUは無駄に遊んでいることになる。「ならば、2つのコアで共用にしても実質的に性能にはほとんど影響がない」と判断した結果が、FPUの共用部分への追い出しである。
これにより、2つのメリットが生まれた。ひとつは「AVX」互換の256bit FMAC命令を実装しても、ダイサイズへの影響が軽微な事である。AMDはSSE5をあきらめてAVX互換命令を採用した話は、2年ほど前の連載25回で説明している。AVXではレジスター長が増えたのみならず、かなり多くの命令が追加されている。これを実装するためには、FPU側の実行ユニットも肥大せざるをえない。
ところがBulldozerでは2コアでこれを折半することになるので、コアあたりの面積ではそれほど大きなインパクトはない。「K10」(Phenom II、Athlon II)までの世代では、コアごとに「FPU/MMX/SSE1~3」の実行ユニットとスケジューラーを用意していた。それに対して今度は2コアで共用だから、FPU関連の面積は半減する。トータルではK10世代のFPUとさして変わらないダイサイズのままで、AVXまでの対応が可能になったわけだ。
この連載の記事
-
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU -
第796回
PC
Metaが自社開発したAI推論用アクセラレーターMTIA v2 Hot Chips 2024で注目を浴びたオモシロCPU -
第795回
デジタル
AI性能を引き上げるInstinct MI325XとPensando Salina 400/Pollara 400がサーバーにインパクトをもたらす AMD CPUロードマップ -
第794回
デジタル
第5世代EPYCはMRDIMMをサポートしている? AMD CPUロードマップ -
第793回
PC
5nmの限界に早くもたどり着いてしまったWSE-3 Hot Chips 2024で注目を浴びたオモシロCPU -
第792回
PC
大型言語モデルに全振りしたSambaNovaのAIプロセッサーSC40L Hot Chips 2024で注目を浴びたオモシロCPU -
第791回
PC
妙に性能のバランスが悪いマイクロソフトのAI特化型チップMaia 100 Hot Chips 2024で注目を浴びたオモシロCPU - この連載の一覧へ