1 ポイント 投稿者 GN⁺ 2023-12-19 | 1件のコメント | WhatsAppで共有

AMDのCDNA 3コンピュートアーキテクチャ

  • AMDはGPUコンピュート市場でのシェアを高めるために、長い歴史を持っている。
  • NvidiaのTeslaアーキテクチャ以降、AMDは追撃を続けている。
  • Terascale 3はVLIW5からVLIW4へ変更し、コンピュートワークロードにおける実行ユニットの活用率を向上させた。
  • GCNはTerascaleを置き換え、GPGPUとグラフィックスアプリケーションの両方に対して一貫した性能を重視した。
  • AMDは、コンピュート向けとグラフィックス向けに特化した別個のCDNAおよびRDNAラインへと、GPUアーキテクチャ開発を分離した。
  • CDNA 2はAMDに注目すべき成功をもたらした。MI250XおよびMI210 GPUは複数のスーパーコンピュータ契約を獲得した。
  • CDNA 3は、AMDが提供できるすべてを前面に押し出して差を縮めている。MI300Xは洗練されたチップレット構成を通じて高度なパッケージング技術を示している。
  • メモリ面では、RDNAラインのInfinity CacheがCDNAの世界に導入され、帯域幅の問題を緩和している。
  • CDNA 3のコンピュートアーキテクチャは、スループットと活用率を高めるための重要な世代間改善を受けている。

GPUレイアウト

  • AMDはRyzenおよびEpyc CPUで、コア数を低コストに拡張するためにチップレットを使ってきた伝統がある。
  • MI300Xは同様の戦略を用いており、XCDと呼ばれるAccelerator Complex Diesによってコンピュートを分離している。
  • 各XCDはコアセットと共有キャッシュを含み、MI300Xは合計8個のXCDを持つことで304個のCompute Unitsを提供する。
  • NvidiaのH100は132個のStreaming Multiprocessors(SMs)を持ち、これをプログラマに対して1つの大きな統合GPUとして提示する。
  • IntelのPonte Vecchio(PVC)はCompute TilesとBase Tileを使って似た機能を提供するが、EMIBブリッジの帯域幅制限により、統合GPUとしては課題がある。

帯域幅問題の解決

  • コンピュート性能は数十年にわたってメモリを先行しており、GPUはますます洗練されたキャッシュ戦略でこれに対応してきた。
  • CDNA 2は8 MBのL2キャッシュを使用し、HBM2eに依存していたが、AMDはRDNA(2)で使われた"Infinity Cache"を追加した。
  • Infinity Cacheはメモリ側キャッシュであり、すべてのメモリトラフィックはInfinity Cacheを通過する。
  • CDNA 3のInfinity Cacheは帯域幅の最適化を目的に設計されており、128個のスライスで構成され、合計17.2 TB/sの帯域幅を提供する。

Cross-Die帯域幅における潜在的な課題

  • MI300XのInfinity Fabricは4個のIOダイを含み、それぞれが2つのHBMスタックと関連するキャッシュパーティションに接続されている。
  • ダイ間接続の帯域幅は、単一の論理GPUとして動作する際に理論上のInfinity Cache帯域幅へ到達することを制限する可能性がある。

Cross-XCDコヒーレンシ

  • Infinity Cacheはコヒーレンシを心配する必要はないが、L2キャッシュはそうではない。
  • AMDはMI300Xを単一の大きなGPUとして公開するために、Infinity FabricのCoherent Masters(CMs)とCoherent Slaves(CS)を使用している。

L2キャッシュ

  • 各MI300X XCDは4 MBのL2キャッシュを含み、これは従来型のGPUキャッシュとして重要な役割を果たす。

L1キャッシュ

  • CDNA 3はL1キャッシュのスループットを2倍に高め、容量を16 KBから32 KBへ増加させた。

スケジューリングと実行ユニット

  • 複雑なチップレット構成と修正されたキャッシュ階層を通じて、AMDはMI300Xを単一GPUとして提示している。
  • CDNA 3は、FP32ユニットの活用に苦労していたCDNA 2の中核Compute Unitアーキテクチャに対して、反復的な改善を加えた。

行列演算

  • 機械学習の拡大に伴い、行列乗算はますます重要になっている。
  • MI300XはCUあたりの行列処理スループットを2倍に高め、以前のCDNA世代と比べて性能を向上させた。

命令キャッシュ

  • CDNA 3は命令キャッシュ容量を64 KBへ増やし、アソシアティビティを4-wayから8-wayへと2倍にした。

最後に

  • CDNA 3における最大の世代変化はメモリ階層にあり、Infinity Cacheの追加が主要な改善点となっている。
  • AMDはMI300を1つの大きな統合アクセラレータにするため、ダイ間帯域幅を大幅に増強した。

GN⁺の意見

  • CDNA 3アーキテクチャは、GPUコンピューティング分野におけるAMDの競争力を強化する重要な進展を示している。
  • Infinity Cacheの導入は、メモリ帯域幅の問題を解決する革新的なアプローチであり、特に大規模データセットを扱う高性能コンピューティングアプリケーションにとって重要である。
  • AMDがMI300Xを単一GPUとして提示する戦略は、プログラミングの複雑さを減らし、開発者がより効率的にリソースを活用できるようにすることで、AMDのGPU製品群をより広い市場に訴求できるものにしている。

1件のコメント

 
GN⁺ 2023-12-19
Hacker Newsの意見
  • AMDがコンピューティング向けとグラフィックス向けで、それぞれに特化したCDNAとRDNAのGPUアーキテクチャ開発へと分岐したことを知った。

    • AMDのコンシューマー向けグラフィックカードがコンピューティング用途に適していないのは、アーキテクチャの違いによるものだと理解した。これは高速道路に入口ランプがないような問題に見える。
  • 多くの科学者がML/AI分野の中核ライブラリ開発のためにNVidiaから無償または割引価格のGPUを受け取っているため、AMDが近い将来にNVidiaと競争するのは難しいと思う。

    • NVidiaの学術界への浸透の仕方は非倫理的だという意見を示している。
  • VLIW(Very long instruction word)について初めて知った。

    • VLIWは、命令レベル並列性を活用するために設計された命令セットアーキテクチャを指す。従来のCPUが命令を順次実行することしか許さないのに対し、VLIWプロセッサは並列実行を明示的に指定できる。これは、他の設計上の複雑さなしにより高い性能を提供しようとする意図によるものだ。
  • AMDがチップレットとバスファブリックに関する知見を活用してAI分野で復帰すると予測していたことについて、自分の意見を述べている。

    • この記事を読むことや、そもそも一般的に読むことに自信がないと認めつつ、単に自分の見解を表明したかっただけだとしている。
  • computeという単語がいつ名詞として使われ始めたのかという疑問を呈している。

    • computeという単語の名詞用法に違和感があると述べている。
  • ここ数十年、コンピュートはメモリを上回るペースで進歩している。CPUと同様に、GPUもますます洗練されたキャッシュ戦略でこれに対処している。

    • CPUとは異なり、GPUは直接的に対処しようとせず、高いレイテンシを受け入れつつ、はるかに広く並列化することで「レイテンシ隠蔽」の効果を提供している。これはGPUコード最適化に関するプレゼンテーションで例として挙げられる内容だ。