Windows Server 2025で導入された注目の高速化技術「ネイティブNVMe」が、実はWindows 11(バージョン24H2以降)にも実装されている。従来のSCSI変換を排除し、SSD本来の力を引き出すことでIOPSの大幅向上やCPU負荷の低減が期待できるという。本Tech TIPSでは、レジストリ操作による有効化手順と、ベンチマークによる検証結果を解説する。
対象:Windows 11 2024 Update(バージョン24H2)/2025 Update(バージョン25H2)
Windows 11のSSD性能を引き出す「ネイティブNVMe」を有効にするMicrosoftは、Windows Server 2025に対して、ストレージ性能を大幅に改善する「ネイティブNVMe(Non-Volatile Memory Express)」のサポートを開始した(Windows Server News and Best Practices「Announcing Native NVMe in Windows Server 2025: Ushering in a New Era of Storage Performance」)。
NVMeは、PCI Express(PCIe)で接続されたSSDなどのフラッシュメモリの性能を最大限に引き出すように設計された通信プロトコル(インタフェース仕様)である。ノートPCの内蔵ストレージで採用されることが多いM2.SSDなどで広く採用されている。
従来のWindowsストレージスタックでは、NVMe SSDが相手であっても、いったん旧来の「SCSIコマンド」に変換して処理していたため、NVMeの高速性を十分に生かせせないという問題があった。ネイティブNVMeではこの変換を排除することで、NVMe本来の性能を最大限に生かせるようになるということだ。
実は、このネイティブNVMeは、Windows 11 2024 Update(バージョン24H2)/2025 Update(バージョン25H2)においても既に実装済みとなっている。ただし、原稿執筆時点では有効になっておらず、レジストリの編集で有効にする必要がある他、幾つか注意すべき点もある。
そこで本Tech TIPSでは、Windows 11でネイティブNVMeを有効化する方法とどの程度性能が向上するのか、また使用する際の注意点などをまとめてみた。当然ながら、NVMe SSDを搭載したPCでないと効果がないので注意してほしい。
また執筆時点でMicrosoftはWindows 11でのネイティブNVMeを正式にサポートしていない。そのため、データ損失などの深刻なトラブルが生じる危険性を否定できない。あくまでも自己責任で試していただきたい。
従来のWindows OSではストレージスタック(ストレージとのやりとりを担う階層化されたソフトウェアのモジュールまたは機能)を統一するために、NVMeデバイスであっても他のストレージデバイスと同様、旧来の「SCSI」という仕様を介した処理が使われている。そのため、NVMe SSDから送られるNVMeコマンドは、ストレージスタック内でいったんSCSIコマンドへと変換されているのだ。これにより、NVMeの並列性やマルチキュー性能が生かせず、またコマンドの変換処理のせいでCPU性能が余計に消費されるといったデメリットがあった。
これに対し「ネイティブNVMe」では、Windows OSがNVMe固有のコマンドセットを直接扱うことで、高い並列性を実現し、かつコマンドの変換処理を排除することでCPUの負荷も軽減できるようにした。Microsoftによると、ネイティブNVMeを有効にすることで、4Kランダム読み込みIOPSが最大80%向上し、CPU使用率は約45%低減できるという。
原稿執筆時点において、Windows 11でもネイティブNVMeは実装済みであるものの、標準では有効になっていない。また、それを有効化する設定項目は「設定」アプリやグループポリシーに存在せず、レジストリの編集が必須となる。
Windows 11で正式にサポートされているものではないため、編集前にレジストリのバックアップを取っておき、不具合があった場合はすぐに戻せるようにしておいてほしい。
[注意]
レジストリに不正な値を書き込んでしまうと、システムに重大な障害を及ぼし、最悪の場合、システムの再インストールを余儀なくされることもあります。レジストリエディターは慎重に操作するとともに、あくまでご自分のリスクで設定してください。何らかの障害が発生した場合でも、本編集部では責任を負いかねます。ご了承ください。
レジストリエディターを起動し、下表のレジストリキーを作成後、「156965516」「1853569164」「735209102」という3つの「値の名前」を「DWORD(32ビット)値」で新規作成して、いずれも「値のデータ」として「1」をセットする。Windows OSの再起動後、設定が反映され、ネイティブNVMeが有効化される。
| 項目 | 内容 |
|---|---|
| キー | HKEY_LOCAL_MACHINEの\SYSTEM\CurrentControlSet\Policies\Microsoft\ FeatureManagement\Overrides |
| 値の名前 | 156965516 |
| 値の名前 | 1853569164 |
| 値の名前 | 735209102 |
| 型 | DWORD(32ビット)値(REG_DWORD) |
| 値のデータ | 1 |
| ネイティブNVMeを有効化するレジストリキー | |
正常に有効化された場合は、デバイスマネージャーでデバイスを種類別で表示したとき、NVMe SSDが「ディスクドライブ」の下ではなく、「ストレージディスク」の下に表示されるようになる。
また、NVMe SSDの[プロパティ]ダイアログを見ると、デバイスドライバのファイルの1つ「disk.sys」が「nvmedisk.sys」に変更されていることが分かる。
NVMe SSDのドライバーファイルの詳細画面(デフォルト)
NVMe SSDのドライバーファイルの詳細画面(ネイティブNVMe有効化後)レジストリエディターでの編集が面倒ならば、管理者権限でWindowsターミナルを起動し、コマンドプロンプト上で以下の3つのコマンドを実行してもよい。ただし、コマンドで有効化する場合も、念のためにレジストリキーのバックアップは忘れないようにしてほしい。
reg add HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 156965516 /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 1853569164 /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 735209102 /t REG_DWORD /d 1 /f
レジストリエディターの場合と同様に再起動後、ネイティブNVMeが有効化される。
不具合の発生などでネイティブNVMeを無効化したい場合は、レジストリキーに作成した3つの「値の名前」を全て削除すればよい。再起動後、ネイティブNVMeが無効化される。
また、管理者権限でWindowsターミナルを起動し、コマンドプロンプト上で以下の3つのコマンドを実行してもよい。やはり再起動後、ネイティブNVMeが無効になる。
reg delete HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 156965516 /f
reg delete HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 1853569164 /f
reg delete HKLM\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 735209102 /f
実際、ネイティブNVMeを有効にするとストレージ性能がどの程度向上するのか簡単なベンチマークテストを実施して確認してみた。
まず、ストレージのベンチマークテストとして定番の「CrystalDiskMark 9.0.1 x64」(CrystalMark社)を実施してみた(設定はデフォルトのまま)。ネイティブNVMeを有効化することで、どの項目も性能が向上していることが分かった。特に「RND4K Q32T1 Read(ランダムリードのマルチキュー32個、シングルスレッド)」では、2倍近いスコアを記録した。
また、実アプリケーションの例としてMicrosoftの動画編集アプリ「Clipchamp」を用いた動画の書き出し時間を計測してみた。容量3.13MB(1分13秒)のMP4ビデオをスマートフォン向けの「垂直9:16」に変換して出力する時間を測ってみたところ、無効時の31.7秒に対し、有効時は26.4秒まで短縮された。短いビデオでこれだけ効果があるので、長時間の動画編集では、より顕著な差となって表れるだろう。
このように大幅な性能向上が見込めるネイティブNVMeだが、注意点もある。「Samsung Magician」などのメーカー独自の管理ツールは、新しいNVMeドライバとの互換性がないため、正常に動作しない可能性がある。現状、Microsoftが正式にサポートしている機能ではないため、他のアプリケーションなどでも不具合が発生する可能性がある点に注意が必要だ。
また、Windows Updateなどの更新プログラム適用時にネイティブNVMeが無効化される可能性も考慮しておくべきだろう。
簡単なベンチマークテストではあるが、ネイティブNVMeを有効化するとストレージの性能が向上することが分かった。Windows Server 2025で実装されたことから、Windows 11に対しても近い将来、正式にサポートされる可能性が高い。それまではリスクを承知した上での利用となるが、NVMe SSD本来の性能を解放する待望の機能といえる。早く正式サポートされることに期待したい。
Copyright© Digital Advantage Corp. All Rights Reserved.