プログラミングでいくら頑張っても、ハードウェアの限界は超えられない。ならば、ハードウェアの限界値を知っておくことは大事なんじゃないか。ということでまとめてみました。
注)同じ規格のメモリでも速度に開きがあるので、なるべく速いほうの数値を書いています。また、マザーボードとメモリの相性などでもスペック通りの値は出ないので、数値は参考程度に見ていただきたいです。
種類
■メモリ
メモリ名称 | 速度(GB/s) | 容量(GB) | 使用しているHW |
---|---|---|---|
DDR3-2666 | 21.3 | 16 | PC |
DDR4-4266 | 34.1 | 32 | PC |
LPDDR4 | 25.6 | 4 | スマホ |
LPDDR4x(今年) | 34.1 | 4 | スマホ |
GDDR5(titan x) | 336 | 12 | グラフィックカード |
GDDR5X | 320 | 8 | グラフィックカード |
GDDR5(PS4) | 176 | 8 | PlayStation®4 |
GDDR5(PS4 Pro) | 217 | 8 | PlayStation®4 Pro |
DDR3-2133 | 68 | 8 | XBOX ONE |
HBM1 | 512 | 4 | グラフィックカード |
HBM2 | 1024 | 8 | グラフィックカード・スパコン向けGPU |
HBM3(予定) | 2048 | 16 | グラフィックカード・スパコン向けGPU |
PC遅いやんと思うかもしれません。ですが、CPU内部にはキャッシュメモリが内蔵されており、IntelCPUで、eDRAM(Embedded DRAM)も含めると、CPU内部キャッシュのみで4層構造になります。(1次cache、2次cache、3次cache、eDRAM)(3次以降が共有メモリ)
内部のキャッシュメモリは、DARMよりめっさ速いので、なんとかしている感じです。
また、各メインメモリの速度比較に関しては、下記図を見ると分かりやすいと思います。
■DDR4メモリと言っても、相性問題やオーバークロックメモリもあり速度はバラバラ
相性問題まであると、買って刺して計測してみるまで分からないですよね。。。
■ストレージ
ストレージ名称 | 速度(GB/s) | 容量(GB) | 使用しているHW |
---|---|---|---|
SSD | 3 | 2048 | PC |
HDD | 0.2 | 10240 | PC |
おまけで、データ永続化先のディスク速度を載せます。遅いですね。。。SSDはシーケンシャルREADが速いやつの参考値なので、もっと遅いSSDもあります。
メモリとストレージの速度ギャップを埋めるもの
メモリーと、永続化層のギャップを埋めるものとして、Intelが「3D XPoint」というものを、Micronと組んで作っているそうです。「Intel Optane Memory」という名前で、今年末か来年頭くらいに出てくるそうです。
- CPUキャッシュメモリ
- メインメモリ
- Intel Optane Memory
- SSD or HDD
と、今まで以上にPCのデータアクセス階層が多くなって、パフォーマンスは上がるのでしょうが、複雑化していきます。。。(自作PC大好きなので、コストアップが気になります。)