>hiyohiyoさん
大変遅くなりましたが、ようやく原因が判明しました。少々複雑なのでご容赦ください。
DISKSPDには、以下の-hオプションと、-Sオプションがあります。
-h: ソフトウェアキャッシュ(System Memory)とハードウェア書き込みキャッシュ(SSD Write Cache)両方を無効にする。ハードウェア読み込みキャッシュ(SSD Read Cache)は有効。但し、いくつかの条件(※)を伴う。
-S: ソフトウェアキャッシュ(System memory)のみを無効にし、ハードウェア書き込み&読み込みキャッシュを有効にする。
この記述だけだと、CrystalDiskMarkは-hオプションを使っているので、世の中にあるすべてのAHCI/NVMeデバイスにおいてWrite Cache無効の非常に低いパフォーマンスになるはずなのですが、以下の条件がクセモノです。
※-hオプションでSSD Write Cacheが無効・有効になる条件:
- StorAHCI.sysは、-hオプションを常に無視して、SSD Write Cacheが有効。
- StorNVMe.sysを使用し、かつPLP回路(遮断時データ保護回路)を持つサーバー用NVMe SSDは、-hオプションを無視して、SSD Write Cacheを有効にする。
- StorNVMe.sysを使用して、かつPLP回路を持たないクライアント用NVMe SSDは、-hオプションのポリシーに従い、SSD Write Cacheを無効にする。
- デバイスマネージャー上の「デバイスでWinowsによる書き込みキャッシュバッファーのフラッシュをオフにする」の機能をオンにすると、SSD Write Cacheが常に有効になる。但し、緊急遮断時にOSが壊れて二度とブートしなくなる可能性あり。
マイクロソフトは、このポリシーを決定済みで、StorNVMe.sysのWrite Cacheをオンするつもりはないそうです。また、インテルは上記のマイクロソフトのポリシーに従うらしいので、RSTドライバであっても、AHCIとNVMeで分けて、マイクロソフトのドライバーと全く同じ動きにさせるそうです。
要するに、-hオプションを使用すると、今後世の中に出てくるクライアント用NVMe SSDは全てHDD並みのパフォーマンスに見えてしまいます。
試しにDiskSpdで-Sオプションを使用したところ、期待通りのWrite performanceを得ることができました。
というわけで、次のCrystal Disk Markのバージョンで、-hではなく-Sオプションに切り替えるスイッチを用意していただけませんでしょうか。よろしくお願いします。