メモリバンド幅の計算方法

メモリバンド幅の計算方法

シェアする

memory

スポンサーリンク
fullnote1

計算方法

The nomenclature differs across memory technologies, but for commodity DDR SDRAM, DDR2 SDRAM, and DDR3 SDRAM memory, the total bandwidth is the product of:

  • Base DRAM clock frequency
  • Number of data transfers per clock: Two, in the case of “double data rate” (DDR, DDR2, DDR3, DDR4) memory.
    Memory bus (interface) width: Each DDR, DDR2, or DDR3 memory interface is 64 bits wide. Those 64 bits are sometimes referred to as a “line.”
  • Number of interfaces: Modern personal computers typically use two memory interfaces (dual-channel mode) for an effective 128-bit bus width.

For example, a computer with dual-channel memory and one DDR2-800 module per channel running at 400 MHz would have a theoretical maximum memory bandwidth of:

400,000,000 clocks per second × 2 lines per clock × 64 bits per line × 2 interfaces =
102,400,000,000 (102.4 billion) bits per second (in bytes, 12,800 MB/s or 12.8 GB/s)

This theoretical maximum memory bandwidth is referred to as the “burst rate,” which may not be sustainable.

https://en.wikipedia.org/wiki/Memory_bandwidth

ピークメモリバンド幅は、以下の4つの要素の積で求められるとのこと。

  1. メモリ周波数(Base DRAM clock frequency)
  2. データ転送回数 (Number of data transfers per clock) ※ 2 (DDRはDouble Data Rate)
  3. バス幅(memory bath width) = 8B (64 bits) ※DDRシリーズの規格(DDR, DDR2, DDR3, DDR4)では共通
  4. チャネル数(Number of interface) ※Broadwell-EPは4ch/CPU

なお、DDR4-2400の「2400」の部分は転送レート=メモリ周波数 × データ転送回数を表す。

まとめると以下となる

理論ピークメモリバンド幅 =メモリ周波数 × データ転送回数 × バス幅 × チャネル数

メモリバンド幅を調べていると「転送レート」いう言葉も出てきて分かりづらいですが、式の前半部分が転送レートです。

転送レート=メモリ周波数 × データ転送回数

例題

Broadwell-EPのメモリバンド幅

2400MT/s x8B(64bit) x4channel =76.8GB/s

Xeon Phi 5110Pのメモリバンド幅

5GT/s x4B(32bit) x16channel = 320GB/s

NVIDIA Tesla K40のメモリバンド幅

3.0GHz x2 x48B(384bit)= 288GB/s

NVIDIA Tesla P100(HBM2)のメモリバンド幅

0.715Gbps x2 x512B(4096bit)  = 732GB/s

P100 roduct Brief

参考

DDR3/4 DRAM GDDR5 DRAM
データ転送速度 0.8~3.2Gbit/s 4~7Gbit/s
1チップのbit幅 4/8bit 32bit

DDR3/4系のDRAMのデータピンのデータ転送速度は、典型的には1.333Gbit/s~2.4Gbit/s程度である。一方、GDDR5 DRAMではデータピンあたり7Gbit/sの速度でデータ転送するものが使われている。

このように、GDDR5 DRAMはデータピンあたりのデータ伝送速度がDDR3/4 DRAMの3~4倍であるので、それだけ高いメモリバンド幅が得られる。また、GDDR5 DRAMは1チップで32bit幅のデータを読み書きできるので、4bit、または8bitのデータ幅のDDR3/4 DRAMより少ないメモリチップ数で必要なビット幅を実現することができる。

CPUのメモリチャネルは4チャネル合計で256bit幅であるが、ハイエンドのGPUは12~16個のGDDR5 DRAMを使って384~512bitと、CPUに比べて1.5~2倍のデータ幅を持っている。

http://news.mynavi.jp/column/architecture/320/

GPUとHBMモジュールの間のデータバスは1,024-bit幅。128-bit幅のチャネルを8チャネル束ねたインターフェイスとなっている。GP100は、合計4モジュールを接続するため、データバスは合計で4,096-bitとなる。メモリチャネルは合計で32チャネル(スードメモリチャネルでは64)となる。

http://pc.watch.impress.co.jp/docs/column/kaigai/20160413_752893.html

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

Twitter でふるのーとをフォローしよう!

スポンサーリンク
fullnote1
fullnote1

シェアする

フォローする

スポンサーリンク