はじめに
NVIDIA H100(Hopper)とGraceには、NVLINK-C2C というものがついていて、Grace-Hopper Superchip では、GraceとHopperの間を NVLINK-C2C で接続しています。
NVLINK-C2Cに関しては、情報がほとんど出ていませんので実態は、900GB/s (片側:450GB/s + 450GB/s) という帯域と、下記のプレスの中で書いてあるものぐあいです。
上記のブログの中で、NVLINK-C2Cの特徴は下記のように書いてあります。
- 高帯域幅 – プロセッサとアクセラレータ間の高帯域幅でコヒーレントなデータ転送に対応しています。
- 低遅延 – 共有データを迅速に同期させ、高頻度でアップデートするために、プロセッサとアクセルレータ間でのアトミックに対応しています。
- 低電力と高密度 – 先進的なパッケージングにより、NVIDIA チップに PCIe Gen 5 を実装する場合と比べて、エネルギー効率が 25 倍、面積効率が 90 倍向上します。
- 業界標準への対応 – Arm の AMBA CHI または CXL 業界標準プロトコルと組み合わせが可能で、デバイス間の相互運用を可能にします。
NVLINK-C2Cは、どうやら2ポートある
NVIDIAのgithub の grace-kernel (Grace用Linux Kernel) の下記の部分に、NVLINK-C2C0 と NVLINK-C2C1 なるものがあることを知りました。
既に、Linuxの総本山にも入っています。
上記のドキュメントでは、
NVLink-C2C0 PMU (The NVLink-C2C0 PMU monitors incoming traffic from a GPU/CPU connected with NVLink-C2C (Chip-2-Chip) interconnect.)
NVLink-C2C1 PMU (The NVLink-C2C1 PMU monitors incoming traffic from a GPU connected with NVLink-C2C (Chip-2-Chip) interconnect.)
とあります。
どうやら、NVLINK-C2C0 は
- Grace-Hopper Superchip
- Grace CPU Superchip
で、NVLINK-C2C1 は、
- Grace-Hopper Superchip
に使われているっぽいです。
おわりに
今回、NVIDIA NVLINK-C2C は、2ポートあることがわかりました。
Grace CPU Superchipの場合は、同じ Die を対向で接続するので、2つの NVLINK-C2C を接続することになり、
が繋がっていることになり、PMUがそれぞれのNVLINK-C2C0についているということですかね。