メモリ帯域幅計算ツール
データレート、バス幅、チャネル数から、DDR、LPDDR、GDDR、HBMのピーク帯域幅と実効帯域幅を計算します。
入力
出力
Readme
メモリ帯域幅はどのように計算されますか?
メモリ帯域幅とは、メモリが1秒あたりに転送できるバイト数です。転送のたびに、メモリバスの各信号線で1ビットが転送されます。そのため、理論上の最大値は転送速度にバス幅を掛け、バイト数に換算するために8で割って求められます。
DDR5-6000は、1秒あたり6,000百万回の転送を行います(MT/s)。64ビットチャネルを2つ備えたデスクトップPCのバス幅は128ビットなので、最大帯域幅は6,000 × 128 ÷ 8 = 96,000 MB/s、つまり96 GB/sです。GDDRとHBMの速度は通常、ピンあたりのGbpsで表されます。ピンあたり1 Gbpsは1,000 MT/sに相当します。
この値が特に重要なのは、大量のデータを読み込む処理です。高密度なローカルAIモデルは、出力するtokenごとにすべての重みを読み込むため、帯域幅によって応答速度の上限が決まります。
ツールの説明
DDR4-3200のデュアルチャネル構成からGeForce RTX 5090やInstinct MI300Xまで、構成例を選択するか、DDR3からHBM3Eまでのメモリタイプを選択すると、各項目に値が入力されます。データレート(MT/sまたはピンあたりのGbps)、チャネルあたりのバス幅、チップまたはスタックの数、チャネル数、メモリチップ数またはスタック数を変更できます。ツールは次の値を計算します。
ピーク帯域幅(バイト/秒) = データレート(MT/s) × 1,000,000 × バス幅(ビット) × 個数 ÷ 8
実効帯域幅 = ピーク帯域幅 × 効率 ÷ 100
読み込み時間 = 読み込むデータ量 ÷ 実効帯域幅ピーク帯域幅と実効帯域幅はGB/sで、ピーク帯域幅はGiB/sとGbit/sでも確認できます。そのほか、合計バス幅、チャネル・チップ・スタックあたりの帯域幅、入力した数値を使った計算式も表示されます。モデルのサイズなど、読み込むデータ量をGB単位で入力すると、データを1回読み込む時間と、1秒あたりの全読み込み回数が確認できます。ここでのGBは1,000,000,000バイトを意味します。
使用例
効率を100%として、読み込むデータ量を16 GBとした場合:
| 構成例 | 計算式 | データを1回読み込む時間 |
|---|---|---|
| DDR4-3200、デュアルチャネル | 3,200 MT/s × 128ビット ÷ 8 = 51.2 GB/s | 312.5 ms |
| DDR5-6000、デュアルチャネル | 6,000 MT/s × 128ビット ÷ 8 = 96 GB/s | 166.67 ms |
| Apple M4 Max | 8,533 MT/s × 512ビット ÷ 8 = 546.11 GB/s | 29.3 ms |
| PlayStation 5 | 14,000 MT/s × 256ビット ÷ 8 = 448 GB/s | 35.71 ms |
| GeForce RTX 5090 | 28,000 MT/s × 512ビット ÷ 8 = 1,792 GB/s | 8.93 ms |
| Instinct MI300X | 5,200 MT/s × 8,192ビット ÷ 8 = 5,324.8 GB/s | 3 ms |
機能
- 14種類のメモリタイプと12種類の実際の構成例
- 任意の効率を設定して実効帯域幅を計算
- モデルやデータセットを1回読み込む時間を計算