ストレージとして現行最速のレイテンシを実現している「Optane SSD」。この超低遅延という性質上、実は「メモリの代用として使えるのではないか?」という説が一部でささやかれているので、実際にOptane SSDを用意してメモリの代替として機能するのかを詳しく検証してみます。
「Optane SSD」の性質を解説
そもそもOptane SSDが、既存のSSDと比較して何が違うのかを解説しておきます。前提をよく理解していると、今回の実験の意味が分かりやすくなりますので。
メモリの次に速い「3D XPoint」という新技術
「3D XPoint」は、半導体メーカーのIntelとNANDフラッシュの大手メーカーであるMicronが共同で開発した、新型の不揮発性メモリです(かなりザックリとした説明ですが)。
具体的にどのような技術で作られた不揮発性メモリなのかは公式に明らかにされていないものの、第三者による解析では「相変化メモリ(PCM)」と言われています。
では、新型の不揮発性メモリ「3D XPoint」は従来のストレージと比較して何が違うのか。主な違いは、
- メモリ(DRAM)より低コストで大容量
- 次元の違う圧倒的な耐久性能
- メモリより長いが、NANDより短いレイテンシ
特に重要なポイントが「レイテンシが従来のNANDフラッシュ(=要するにSSDなど)より短い。」ということです。
レイテンシが短い順に、各種ストレージをまとめてイラスト化しました。当然ながら最もレイテンシが短い(=CPUとの距離が近い)のは、CPUに内蔵されているメモリです。
最近のCPUはほぼ例外なくL1キャッシュやL2キャッシュといったメモリ(SRAM)を、CPUのチップ内部にいっしょに埋め込まれています。L1キャッシュの遅延は1ナノ秒で、L2キャッシュは10ナノ秒くらいです。
そして次に速いのがメモリ(DRAM)ですね。だいたい50~60ナノ秒なので、CPU内蔵のL1キャッシュなどと比較して最大で50倍は遅い。でもめちゃくちゃ速いです。
メモリの次が「3D XPoint」で、レイテンシは10マイクロ秒。今まではデータセンター向けのSSDが3番目に速いストレージを占めていました※が、これからは3D XPointを採用するストレージに取って代わることに。
※代表的なものだとサムスンが開発した「Z-NAND」など。Z-NANDのレイテンシは16マイクロ秒。
あとはコンシューマ向けのNVMe SSDやSATA SSDで、それに続くもっとも遅いストレージがHDDですね。
ストレージ | 距離 | 感覚的には |
---|---|---|
CPU内蔵メモリ | 1 mm | 脳みそ(海馬) |
メモリ(DRAM) | 5 cm | 目の前のデスク |
3D XPoint | 10 m | クローゼットの本棚 |
SSD | 50 m | 近所の図書館 |
HDD | 100 km | 都心の大きな書店 |
レイテンシの違いを距離換算するとこうなります。
DDR4メモリDDR4-2133 4GB x1 | Optane SSDOptane 900p 280GB |
---|---|
ちなみに性能をベンチマークで比較してみると、まだまだメモリが圧倒的。Optane SSDのランダムアクセス速度はSSDと比較すればデタラメに速いが、メモリは5倍以上の速度を誇る。
メモリより遅いけど「代替」できるかも?
既存のSSDと比較して、3D XPointを採用する「Optane SSD」と呼ばれる製品群はだいたい5~10倍はレイテンシが短い。それでもメモリより100~200倍は遅いわけですが、SSDより遥かに高速なわけです。
そして開発したインテルも「Optane Persistent Memory DIMM」という、メモリの代替を狙う製品を発表しており、Optane系ストレージはメモリに取って代わる新しい選択肢になる可能性が高い現状があります。
ということは、Optane SSDを何とかしてメモリとして利用すれば「メモリの代用」として使えるかも知れない。
テスト環境と検証方法
テスト環境について
テスト環境 | パーツ | 備考 / 詳細 |
---|---|---|
CPU | Core i9 9900K | 出荷設定のまま |
冷却 | 風魔弐 | 120mmデュアル空冷ファン |
グラボ | RTX 2060 6GB | ZOTAC Twin Fan |
メモリ | DDR4-2133 4GB | Micron Crucial |
マザーボード | Intel Z390 | ASRock Z390 Extreme4 |
SSD | SATA 250GB | Samsung 860 EVO M.2 |
NVMe 280GB | Optane 900p 280GB | |
SATA 2TB | Micron 1100 2TB | |
電源ユニット | 1200W(80+ Platinum) | Toughpower iRGB PLUS 1200W |
OS | Windows 10 Pro 64bit | Ver 1809 |
ドライバ | NVIDIA 419.35 WQHL | – |
ディスプレイ | 1920 x 1080 @240Hz | BenQ XL2546 |
検証には「ちもろぐ専用ベンチ機」を使います。CPUは定格クロックのCore i9 9900K、グラボはRTX 2060(VRAMは6 GB)です。メモリは4 GBだけ搭載し、その代わりにOptane 900p(280 GB)を搭載する。
メモリの代用として機能するかを検証する
検証で知りたいことは「Optane SSDがメモリの代用として機能するかどうか?」です。
この結論を出すため、今回はメモリを4 GBだけにして、残りの不足分はすべてOptane 900p(280 GB)に任せるという方法を採用します。
仮想メモリをOptane 900pに割り当てて、サイズは「システム管理サイズ」にする。メモリが不足した場合、空き容量のある限りOptane 900pをメモリの代わりに使ってくれます。
なお、今回の検証のために使うOptane 900pは、主にTwitterで活躍されているストレージガチ勢の「ベルQ(@bel9r)」さんにお借りしました。この場を借りてあらためて感謝申し上げます。
U.2端子からM.2コネクタに変換するタイプのOptane SSDだったので、PCIe変換コネクタを使ってグラボ用のPCIeスロットに挿し込む。これでCPU直結レーンでSSDが動作します。
※普通にM.2コネクタに挿し込むと、チップセットを経由してCPUに接続するため、帯域幅が4 GT/sに制限される。性能への悪影響を避ける、念のための処置です。
CPU性能に対する影響
ブラウザ「Google Chrome」
Google Chromeは動作自体は確かに軽いブラウザですが、裏では恐ろしいほどメモリを食い続けるメモリイーターなソフト。タブ数が9を超えた時点で、Optane SSDを使い始めました。
その後は18タブごとに1.6 GBずつOptane SSDを消費し続けた。Chromeは仮想メモリを真面目に使えるソフトなので、空き容量がある限りタブを展開できそうです。
ただし、動作そのものは完璧ではなく、90タブくらい開いた時点で最初の方に開いたタブのいくつかが再読込になってしまいました。
レンダリング性能
Cinebench R15は国際的に有名なCPU向けベンチマーク。メモリをそれほど消費しないベンチマークなので、メモリが少ない環境でも結果への影響はそれほど出ないはずです。
Cinebench R15 / マルチスレッド性能
若干性能アップしているように見えますが、高スコアになればなるほどブレ幅も大きくなるので、この程度の差は「誤差」と考えていいです。
Blender 2.79c / BMWの生成時間
無料のレンダリングソフト「Blender」にて、BMWプリセットを読み込んで生成に掛かった時間を計測。結果は微妙に伸びてますが、このテストもメモリをさほど消費しないので、違和感のある結果です。
なので参考値だと思ってください。
計算速度
Euler3Dは流体力学の計算をCPUに処理させて、計算速度を求めるベンチマーク。単位はHz(ヘルツ:1秒あたりの計算回数)で示され、数値が大きいほど優秀です。
Eular 3D Benchmark / 16スレッド
若干の性能アップです。ただし、このテストはメモリの帯域幅に影響を受けるため、計算速度を速くしたいならOptaneを導入するよりメモリをデュアルチャネルにした方が良い。
Lammpsは物理シミュレーション(内容は古典分子動力学計算)を行うソフトウェア。ワークステーション向けベンチマーク「SPEC」に付属しているプリセットで計算速度を求めます。
Lammps / SPEC Ratio
メモリを最大で10 GBも消費するテストなので、メモリが多いほど計算速度が改善します。
Lammps / lj Test Time
最初のシミュレーション「lj Test」の結果だけをまとめると、仮想メモリにOptane SSDを使うことで同じ4 GBメモリでも計算速度は3割も改善したことが分かった。
やはり低レイテンシの効果は出ていますね。
無料の動画変換ソフトとして国際的に有名なHandbrakeを使って、動画エンコードの処理速度を計測。定番の「x264」と、更に圧縮率の高い「x265」でエンコードを行います。
Handbrake x264 / 平均処理フレーム数
Handbrake x265 / 平均処理フレーム数
ほとんど誤差レベルの性能差にとどまった。テストファイルが約1 GBしか無く、メモリをあまり消費しないのが原因です。
Adobe Premiereの動画エンコード速度を計測します。ただし、Premiereから直接エンコードするとログが残らないため、Media Encoderからテストを実行した。
エンコードの内容は、5Kサイズの動画(5120 x 2700 / 24 fps / .R3D)というやや大きめの動画素材を、標準プリセット「Youtube 4K」で4K動画に変換する。素材が大きいとメモリの影響も出やすい。
Premiere Pro / Youtube 4K(x264)
しかし、結果はイマイチでした。わずか2.5%しか処理速度を改善できず、何とも言えない結果に。
圧縮と解凍
7-Zipは無料の解凍ソフトとしては非常に有名。付属のベンチマークツールで、圧縮と解凍の速度を「MIPS」という単位で出してくれます。MIPSが高いほど処理が速いです。
7-Zip Benchmark / 圧縮
驚きの結果が出ました。同じ4 GBでも、Optane SSDに仮想メモリを割り当てた場合は約1.8倍の処理速度を示したのです。圧縮はメモリをよく使うので期待はしてたけど、まさかここまでとは。
7-Zip Benchmark / 解凍
一方で解凍はメモリをあまり使わないので、性能差はほとんど出なかった。
WinRARはシェアウェアの解凍ソフトとして知名度が高い。こちらも付属のベンチマークツールで、解凍の処理速度を計測可能。結果は「1秒あたりの処理量」で表示します。
WinRAR Benchmark / 解凍
7-Zip Benchmarkと同様、やはり解凍の速度はやや低下しています。
Adobe After Effects CC
After Effectsは動画編集ソフトですが、Premiere Proよりもデジタルな映像合成(VFXやモーショングラフィックス)に特化したソフトです。
合成映像を取り扱う関係で公式サイトの推奨メモリ容量は32 GBと非常に大きい。よってメモリ容量がパフォーマンスに与える影響はそこそこ大きいはずです。
Adobe After Effects / 総合スコア
動作はするけど、正常には動きません。仮想メモリをうまく使ってくれないソフトは少なくない。
Adobe Photoshop CC
Photoshopは写真編集の定番ソフト。解像度の大きい写真や素材を取り込むと一気にメモリ消費量が増え、フィルタ類を使うと更にメモリ消費量が跳ね上がります。
Adobe Photoshop / 総合スコア
Optane SSDにしっかりとキャッシュを生成するものの、性能への影響は意外なほど小さい結果に。
メモリ | 4GB | 4GB + Optane | 32GB |
---|---|---|---|
総合スコア | 660.6 | 677.7 | 950.8 |
一般処理のスコア | 64.8 | 65.6 | 96.8 |
フィルタ系のスコア | 58.6 | 61 | 90.4 |
Photomergeのスコア | 83.5 | 85.6 | 101 |
GPUスコア | 41.9 | 40.7 | 62.9 |
スコアの内訳をまとめてみると確かに若干の性能アップは果たしているが、率にしてたったの2%でしかなく、体感できるほどの処理性能アップとはならなかった。
ゲーム配信
無料で使える定番ゲーム配信ソフト「OBS(Open Broadcaster Software)」による配信の安定性も検証。
FF14:紅蓮のリベレーター(最高設定)を、フルHD(1080p 60fps)で配信と録画を実行。プリセットは「veryfast(軽い)」を使いました。
配信の安定性はドロップフレーム率(コマ落ちの割合)で比較します。ドロップフレームが少ないほどスムーズな映像で、逆に多いとガタガタな映像になります。
OBS配信 & 録画 / ドロップフレーム率
約3000フレームの録画配信で、コマ落ちしてしまったフレームの比率はしっかりと改善した。4GBメモリでは1割は落とすところを、Optane SSDの仮想メモリなら全く落とさずに配信できた。
OBS配信 & 録画 / FF14のスコア
ただし、FF14そのものの動作は改善出来なかった。FF14の動作を安定させるには、メモリのデュアルチャネルが必須のようです。
ゲーム性能に対する影響
ゲームの場合はメインメモリだけでなく、グラフィックボードに搭載されているVRAM(ビデオメモリ)が不足した場合も、ページファイル(仮想メモリ)に押し付けられるので影響が出やすくなります。
ゲームによってはページファイルを全く活用できない場合もありますが、そうではないゲームにおいてOptane SSDが猛威を振るう可能性があるかもしれない。では検証です。
Apex Legends
Apex Legends1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
Apex Legendsはメモリが4 GBしか無いとクラッシュしやすいですが、Optane SSDに仮想メモリを割り当てたところ動いてしまった。ややコマ落ちが多いけれど、動作はしました。恐るべしオプテイン。
※ただし、Apex Legendsがアップデートで動作が安定しやすく改善された可能性もあります。
Call of Duty : Black Ops IV
Call of Duty : Black Ops IV1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
Call of Duty : Black Ops IVは残念ながら起動してすぐにクラッシュ。やっぱり物理メモリ4 GBでは起動すらマトモにできないゲームもあります。
Rainbow Six Siege
Rainbow Six Siege 1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
レインボーシックスシージは平均フレームレートが改善した。ただ、フレームレートの安定性はメモリをデュアルチャネルにしないと安定しない傾向に変わりはない。
PUBG
PUBG1920 x 1080 / ウルトラ設定 |
平均フレームレート最低フレームレート(下位3%)
PUBGは意外と仮想メモリを活用してくれます。若干のコマ落ちはあるものの、なかなかスムーズに動作してくれた。
Assassin’s Creed Odyssey
Assassin’s Creed Odyssey1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
アサシンクリードオデッセイはメモリを大量に消費する激重なゲーム。Optaneを使うことで若干の性能アップが見られましたが、メモリには届きません。
Grand Theft Auto V
Grand Theft Auto V1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
Grand Theft Auto Vはメモリが少ないと非常に不安定な動作になるけれど、Optaneの場合はなんとか踏ん張ってベンチマークをクリアできた。
Rise of the Tomb Raider
Rise of the Tomb Raider 1920 x 1080 / 最高設定(Map : 地熱谷) |
平均フレームレート最低フレームレート(下位3%)
トゥームレイダーもメモリが少ないとベンチマークすら突破できないゲームですが、Optaneならギリギリ行けた。それでもフレームレートの安定性はひどく、メモリには敵わない結果です。
バイオハザードRE:2
Resident Evil 21920 x 1080 / カスタム設定(VRAM : 7.38 GB消費) |
平均フレームレート最低フレームレート(下位3%)
VRAMを約7.4 GB消費する設定にしたバイオハザードRE:2は、かなり安定して動いています。このゲームはページファイルを結構うまく使ってくれる。
モンスターハンターワールド
Monster Hunter World1920 x 1080 / 最高設定 |
平均フレームレート最低フレームレート(下位3%)
モンスターハンターワールドはメモリをかなり消費するものの、フレームレートへの影響は少なめです。Optaneを使うと最低フレームレートがわずかに改善したが、誤差レベルですね。
黒い砂漠
黒い砂漠 1920 x 1080 / リマスター品質 |
平均フレームレート最低フレームレート(下位3%)
黒い砂漠はなぜか改善せず、むしろフレームレートは低下してしまった。
マインクラフト
Minecraft 1.13.2 1920 x 1080 / 32チャンク / SEUS Renew |
平均フレームレート最低フレームレート(下位3%)
マインクラフトは32チャンクを描画する設定にして、シェーダーに「SEUS Renew」を付けて筆者の自作マップにて計測しました。
なお、メモリの割当量(JVM引数の設定)は搭載しているメモリの50%です。今回は2 GBをマインクラフトに与える設定にした。
結果は意外なもので、最低フレームレートが若干改善して安定性が良くなりました。マインクラフトは比較的ページファイルをちゃんと使ってくれるようです。
平均パフォーマンス
平均フレームレート 1920 x 1080 |
平均フレームレート最低フレームレート(下位3%)
平均をまとめると、平均フレームレートは2割の改善、最低フレームレートは3割近くも改善しました。ページファイル(仮想メモリ)用のストレージとして、Optane 900pは非常に強力です。
しかし、ゲームによっては物理メモリが4 GBしか無いだけで動作が不安定になることも多く、メモリが多めにあることを前提に設計されたソフトは決して少ないのが現状。
Optane SSDをPCの動作をよりスムーズにするために使うのは十分にアリと言えますが、Optane SSDにメインメモリの代わりをさせるのは実用上難しい部分があると言わざるを得ない。
まとめ「Optane SSDをメモリの代用にするのは難しい」
ページファイルとして使うなら有用
実験の結果、ページファイル(仮想メモリ)を割り当てるストレージとして使うと、普通のSSDをページファイルとして利用する場合と比較してかなりの性能アップを実現できました。
テスト内容 | 4GB + Optane SSD | 4GB + SSD | 性能差 |
---|---|---|---|
7-Zip(圧縮) | 23753 MIPS | 13083 MIPS | +81.6% |
Lammps(lj Test) | 673.9 秒 | 966.6 秒 | +30.3% |
ゲーミング(平均) | 99.1 fps | 80.4 fps | +23.3% |
特にメモリの使用量が大きく、ページファイルをよく利用する(=キャッシュヒット率が高い、とも言う)処理において、超低遅延のOptane SSDの効果がハッキリと確認できましたね。
Lammps実行時にOptane SSDの様子を確認すると、怒涛の勢いで読み込みと書き込みを繰り返していました。それでもタスク待ちが発生してプチフリーズが頻発するなど、動作は不安定でしたが。
メモリの代替には「Optane DIMM」が必要
Optane SSDのレイテンシは「10 μs」ですが、メモリスロットに接続するOptane Persistent Memory DIMMは「170 ~ 320 ns」にまで短縮される見込みです。つまりOptane SSDより更に約60倍も高速なストレージになる。
Optane Persistent Memory DIMM | メモリなら | |
---|---|---|
128 GB | $ 577 | $ 729 |
256 GB | $ 2125 | $ 1895 |
512 GB | $ 6751 | $ 8808 |
現時点で明らかになっている価格設定も、メモリの代替を狙っていることがよく分かります。同じ容量ならDDR4メモリよりも、Optane DIMMの方がいくらかは安い。
結論:キャッシュ用に「Optane Memory」は選択肢
結論として、Optane SSDをページファイル(仮想メモリ)として使うと、普通のSSDをページファイル置き場にするより高いパフォーマンスを得られることが分かりました。
価格コムの掲示板などでは、大して検証せずに「メモリ増やせばいいじゃん。」という人が多いですが、キャッシュヒット率が高い状態において実用上のメリットは検証で確認できた。
逆に言えば、キャッシュヒットしない限りは効果を発揮しないので、Optane Memoryを仮想メモリ用に使うのは万人におすすめというわけではない。
システムストレージにSSDを使っているし、メモリも16 GBくらい搭載しているにもかかわらず、PCの動作に妙なつっかかりを感じる場合は導入する意味はあると思います。
検証に使ったOptane 900pは仮想メモリ用としては大き過ぎるので、仮想メモリ用には「Optane Memory」をおすすめしておく。16 GB版が約4000円、32 GB版は約7000円です。
今回の検証では最大で14 GB程度のページファイルを生成したので、余裕をもって32 GB版のOptane Memoryが良いですね。それでも不安な人は「Optane 800p」も選択肢になる。
以上「Optane SSDはメモリの代替になる?仮想メモリに使って性能を検証。」でした。
メモリの容量でどれくらい性能が変化するのか。については、すでに検証済みなのでこちらの記事を読んでみてください。
ファッキン高いSSD買うぐらいならメモリ買い足せって話になっちゃうんですけどね
ファッキン高いというパワーワード
「ファッキン高い」個人的にはすこなワードですよw
目にしたのはPanty & Stocking with Garterbelt(アニメ)以来な気がする…
そうなんですよ~。だから「万人におすすめではない」という結論になってしまいます。代替として機能するなら、メモリより容量単価が安いので魅力的になりそうなものですが…。「Optane DIMM」に期待してます。
Optane 900pとOptane memoryの性能差はどれぐらいですか?(特にレイテンシ)
大して変わらないならば安い方のOptane memoryをRAMをバカ食いする円周率の計算で導入してみようと思うのですが…
話は逸れますが、僕の使っている円周率計算ソフトは仮想メモリもRAMとして扱ってしまうので、可能な限りレイテンシの低い仮想メモリが欲しいのです。
Optane 900pとOptane Memory 32GBで性能を計測したところ、レイテンシはOptane Memoryの方が短いことが判明。大容量を必要としないならOptane Memoryで決まりですね。
ありがとうございます!
*普通にM.2コネクタに挿し込むと、チップセットを経由してCPUに接続するため、帯域幅が4 GT/sに制限される。
Z390Ex4のM.2は2スロットともCPU直結のPCIeGen3x4でつながったような
メモリ律速な作業をしないせいもあるけど仮想メモリ置き場を買うくらいならメモリ買うかなぁ
16GBx4枚64GBが通常のPCの限界なので
それ以上のメモリの代替には使えそうですね
まあそろそろDDR4でも16Gbitチップも出回るので32GBx4で128GBまでいけそうですが
ただMSIのリリース見てるとCoffeeLake以降っぽいんだよね独自対応すればskylakeでも動くんだろうけど
xeon bronzeなりを買ったほうがいいのでは<64GB以上のメモリ
メモリ多かろうが仮想メモリはメモリと書いてるだけで実際メモリの代わりじゃないから結局普通に運用するなら仮想メモリいるし、最後の結果データだけ見ると20%以上の性能UPはすごいし金あるならやってもよさそう。
Optane DIMMはどう運用するのだろう?全部メモリスロットに差し込みDDRメモリ無くすのか、分けて空きスロットに差し込むのか、全部だとゲームとかロード無くなりそうだけどメモリボトルネック発生しそうだし、後者だとレイテイシはメモリより多く残るんだろうな。
これもしやdeskminiみたいなメモリの容量制限が多くてかつ単体のメモリが高くなりやすいベアボーンに使えそう(Optane Memory)
検証おつかれさまです
いかにもクリエイティブとかサーバー用途向けな印象
NVMeですらちょっと躊躇するレベルなのにお値段…
まとめ以降をよく見たらグラフの「4GB」=「普通(SATA?)のSSD」って書いてあったけど、最初に(またはグラフに「4GB+普通のSSD」と)書いてあった方が分かりやすいと思う
途中まで「4GB 仮想メモリ無し」かと勘違いしてた…orz
…仮想メモリ無しには普通しないけど
4GB 仮想メモリ無し
4GB 仮想メモリ有り(HDD)
4GB 仮想メモリ有り(SATA SSD)
4GB 仮想メモリ有り(NVMe SSD)
4GB 仮想メモリ有り(Optane SSD)
での比較があったらもっと面白かったなとか思ったけど、流石に大変だよね
それらも比較に入れるならソフトによるし本来の仮想メモリの意味なくなるけどRAMディスクもついでにあると面白いかもね。
はじめまして,興味深い記事拝読させていただきました.いきなり質問でもうしわけないのですが,asusのハイエンドマザボにあるDIMM.2 経由でのssd接続と普通のM.2経由での接続の比較とかご存知ないでしょうか?ちょっとマニアックなことをしていてメモリをあほみたいに(128GBじゃ足りない)使っているので,SSDを仮想メモリとして使用した際の性能を知りたいと思っています.
intelのoptane dc persistent memoryやwester digital のUltrastar DC ME200 Memory Extension Driveは環境構築に費用が掛かるので,その代わりにならないかというのが気になっているところです.
DIMM.2を使うために「DIMM.2カード」を使うのですが、そのDIMM.2カードは「M.2スロット増設カード」と似たようなモノなんです。結局、PCI Express 3.0 x4(CPUまたはチップセット側のPCIeレーンを消費)を経由することになるので、性能への影響はM.2増設カードを使った場合と大差ないです。
コメントありがとうございます.DIMM.2で十分速度がでるならoptane dc persistent memoryの代わりの選択肢になるかと思っていたのですが,そのレベルではないようですね.よい情報ありがとうございます.