Vengineerの妄想

人生を妄想しています。

NVIDIA の NVLINK と Memory Controllerの帯域

はじめに

NVIDIA の P100/V100/A100/H100のNVLINKの各ポートとMemory Controllerの帯域を比較してみました。

NVLINK

  • P100 : v1 (20GB/s) x 4 porsts
  • V100 : v2 (25GB/s) x 6 ports
  • A100 : v3 (25GB/s) x 12 ports
  • H100 : v4 (25GB/s) x 18 ports

Memory Controller

  • P100 : HBM2 x 4 : 22.875GB/s (128bit)
  • V100 : HBM2 x 4 : 28.125GB/s (128bit)
  • A100 : HBM2e x 6 : 50GB/s (128bit), 25GB/s (64bit)
  • H100 : HBM3 x 6 : 75GB/s (128bit), 37.5GB/s (64bit)

  • HBM2/2e の Memory Controller は、128bit x 8 channels

  • HBM3/HBM3e の Memory Controller は、64bit x 16 channels

NVLINK の port と Memory Controller の Channel の帯域の比較

  • P100 : 20GB/s vs 22.875GB/s
  • V100 : 25GB/s vs 28.125GB/s
  • A100 : 25GB/s vs 25GB/s
  • H100 : 25GB/s vs 37.5GB/s

これを見ると、NVLINK の port と Memory Controller の Channel の帯域は同じぐらい。

Copy Engine の数

  • P100 : ???
  • V100 : ???
  • A100 : 10個
  • H100 : 10個

仮に、P100 と V100 の Copy Engine が A100 と H100 と同じ10個だとすると、NVLINKの ports 数が 4 と 6 であるので間に合いそう。

A100のNVLINKのport数は12、H100のNVLINKのport数は18なので、Copy Engine が 10個だと、少なそう。。。

おわりに

NVIDIAのNVLINKのportの帯域は、Memory Controller のChannelの帯域と同じぐらいでは?ということが分かりました。。。