高速アクセス可能なメモリは夢である。
半導体メモリを活用
昔、X68000 EXPERTを所有していた頃、初代X68000と異なり、EXPERTはメインメモリが2倍の2MB搭載していた事が私に福音を呼び込んだ。
というのは、当時のX68000のソフトウェアは、メインメモリ1MBで動作するようプログラムされたものが大半だったため、私のEXPERTはメモリを1MB近く使われない状況にあったのだが、16KBのS RAM(スタティックRAMの事。不揮発性メモリとして利用可能)を搭載したX68000の特徴を活かし、このS RAMにメモリキャッシュプログラムを保存し、X68000 EXPERTが起動するたびにこのS RAMに保存されたキャッシュメモリプログラムをロード、メインメモリ1MB分をキャッシュメモリとして利用してあらゆるプログラムで利用していた事がある。
通常ならFDからデータを読み込む所を、キャッシュされたメモリからプログラムを読み込むので恐ろしく高速ローディングされる状況を作り出すことに精工したため、その動作は実に快適だった。
このように、半導体メモリからデータをローディングするという行為で高速アクセスできるという事の恩恵は、実際に使ってみるととてつもなく快適で、たとえそれが当時高速だと言われたハードディスクであっても、それすらも凌駕するアクセス速度でメモリの大切さを実感できた。
また、その後Windows全盛期になった時でも、私はメインメモリを比較的多めに搭載し、そのメインメモリからRAMディスクプログラムでRAMディスクを作成し、それをダウンロードデータの格納先として利用していた時もある。
ダウンロードしてきたデータをセキュリティソフトで検疫し、そして圧縮されたデータを展開するのもRAMディスク上でやるので、そのアクセスがとんでもなく高速である事から、とても快適だった。
ただ、時代と共にこうしたRAMの利用頻度は徐々に減ってきているように思える。SSDそのものが半導体メモリだと言ってしまえばそれまでだが、わざわざメインメモリを活用しなくても、高速アクセスできるストレージが増えたからだ。
キャッシュメモリ
だが、今でも高速にアクセスするメモリが重宝される事そのものに違いはない。
ただ、そのメモリの配置される場所が、昔より高度な位置に変化しており、なんとCPUの2階部分にメモリを配置してCPUからのアクセスを高速化したのが、AMDの3D V-Cacheである。
基本的に3次キャッシュメモリという位置付けでCPUからのアクセスをとんでもなく高速化できるメモリなのだが、驚くのはCPUに直結するメモリとして64MBもの容量を持っているという事に尽きる。
ただ…最近の状況で64MBと言われても、おそらくデータ量としては小さすぎて利用価値はあまりない。
だが、そんな3D V-CacheメモリをRAMディスクとして使用する事に成功した猛者が現れた。
https://www.tomshardware.com/news/amd-3d-v-cache-ram-disk-182-gbs-12x-faster-pcie-5-ssd
最速のPCIe 5.0 SSDよりも12倍以上も高速にアクセスできる事が確認できたようで、シーケンシャルリードが約182GB/s、シーケンシャルライトが約175GB/sという速度に達するという。
実にとんでもない速度である。
容量が現実的なら…
ただ、前述したようにRyzenの3D V-Cacheではメモリ容量が64MBしかなく、あまり実用的とは言い難い。
これがGB単位の容量だったなら、活用の域はもっと広く、また効果も大きいと言える。
現在、この方法が無有効として考えられるのは、Genoa-XといったEPYCプロセッサではないかと考えられる。これなら容量は1.3GBとなるので、十分データを格納するだけの容量となる。
AppleのMシリーズが高速稼働するのは、おそらくメインメモリがダイの上に搭載されたユニファイドメモリだからだと考えられる。もっとも、Mシリーズのコアそのものが高性能だという事もあるが、メインメモリそのものがユニファイドメモリなので、コアがアクセスするデータが高速で読み出せ、かつ書き込めるので、処理に遅延が発生しないのである。
何となくだが、私はこのメモリを半導体に積層していくというカタチが、今後のトレンドになるのではないかとさえ思っている。
今回のRAMディスクへの転用は、利用価値こそないかもしれないが、そうした技術の裏付けになるのではないかと思う。
こういうのを知ると、Ryzen7 7800X3Dがちょっと欲しくなる。
未来のコアはどんなものになっているのだろうか?