Windows11 啟用原生NVME支援

chanp wrote:
好像有點出入
Windows 11 25H2 / 24H2 導入更快原生 NVMe 驅動, 效能封印解鎖
微軟在即將推出的 Windows 11 25H2 與已推出的 24H2 近期最新版更新,低調加入了一款全新的 NVMe 原生驅動程式 nvmedisk.sys。
https://www.notebookcheck.net/Windows-11-hack-Higher-SSD-speeds-with-new-Microsoft-NVMe-driver.1190489.0.html
外媒實測發現,只要手動啟用這套驅動,部分 NVMe SSD 的效能可獲得明顯提升,甚至超過 20%~40%,但同時也伴隨一定風險。
為什麼會有差別?
雖然 Windows 早在 Windows 8.1 就支援 NVMe,但多年來系統預設仍使用 disk.sys 驅動,這是一套源自 2006 年的老驅動,實際上是用「類 SCSI」的方式在處理 NVMe 裝置,效能發揮有限。
Windows 11 25H2、24H2 與 Windows Server 2025 則新增了 nvmedisk.sys,對 NVMe 協定有更完整的原生支援,但目前並未預設啟用。如果你手癢的話可以參考以下教學。
如何手動啟用 nvmedisk.sys(教學)
操作前強烈建議
先完整備份資料
最好建立系統映像(System Image)
若系統碟 SSD 不相容,可能會直接無法開機
步驟一:新增登錄檔設定
以 系統管理員身分 開啟命令提示字元(CMD),依序輸入以下三行指令:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 735209102 /t REG_DWORD /d 1 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 1853569164 /t REG_DWORD /d 1 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 156965516 /t REG_DWORD /d 1 /f
或以下,二擇一
打開登錄編輯器並在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides下新增32位元 DWORD 值
“735209102”=dword:00000001
“1853569164”=dword:00000001
“156965516”=dword:00000001
完成後重新開機。
步驟二:確認是否啟用成功
重新開機後,開啟 裝置管理員:
啟用前,SSD 會列在「磁碟機」
啟用後,SSD 會改列在「儲存裝置」
另外在 SSD 的 驅動程式詳細資料,應可看到正在使用 nvmedisk.sys。
實際效能提升有多少?
根據外媒與使用者實測結果:
PCIe 4.0 SSD:循序讀取效能約提升 20~45% 。寫入效能:約提升 15~30%
PCIe 3.0 SSD :也有一定幅度改善,4K 多執行緒效能提升明顯,對工作站或伺服器較有感
左為未啟用,右為啟用後
左為未啟用,右為啟用後
在不更換任何硬體的前提下,這樣的效能成長相當吸引人。
已知風險與問題
這項手動啟用方式並非完全安全,社群已回報以下狀況:
並非所有 NVMe SSD 都支援
不相容可能導致 Windows 無法開機
部分 SSD 工具(如 Samsung Magician、WD Dashboard)可能異常
有使用者指出分割區資訊可能被修改


>Windows 11 25H2、24H2 與 Windows Server 2025 則新增了 nvmedisk.sys

補個 資料,
Windows 11 23H2 也有 nvmedisk.sys

chanp
26H1好像會啟用,不需要強制開啟
caesarwayne wrote:
啟用後前後對比(恕刪)


借問一下,你的4K數值怎麼用的,是用什麼軟體嗎?

https://www.mobile01.com/topicdetail.php?f=490&t=7207897#92576983





caesarwayne的图


asd1026
感謝downtodo大
林素毅
Read:18659 IOPS ~ 73MB/s, Write:59813 IOPS ~ 233MB/s, 並沒有特別快
沒感覺卡頓

不過好像CPU占用變低了
chanp
沒問題為什麼會卡頓…
其實原本Windows的方案會有比較好的穩定性與相容性,但就是犧牲了效能
chanp
19年前的老驅動 的確不能要求什麼,要不要順便把系統復舊一下,整套搭配更讚👍
我平常會做db server 相關工作,要怎麼測disk io我很熟練
這個是windows 長久一來擺爛
mac linux android 早就都支援了
我會建議要測native nvme不要用這些只能測1t 32qd的軟體
下載微軟的diskspd 放到指定的磁碟底下跑我下面這個語法
$targetPath 就是你想要測的ssd目標
t=執行序
o=qd 建議先測1 然後32為倍數開始每次測到你的nvme ssd極限
1qd不一定會測出較好的數字 尤其在desk 上面,太容易受到其他軟體背景程式影響
然後有開發程式的我會建議用微軟的開發人員磁碟(dev drive),會再更進一步的加強native nvme的威力

# 1. 修改參數與自定義備註 (例如: "Idle", "VideoPlay", "Browsing")
$targetPath = "D:\testfile.dat"
$note = "Idle"
$myArgs = "-b4K -t12 -o1 -r -w100 -Suw -L -d30 -c10G $targetPath"

# 2. 自動偵測:電腦名稱、硬碟型號、檔案系統
$computerName = $env:COMPUTERNAME
$driveLetter = $targetPath.Substring(0, 1)
$diskInfo = Get-Partition -DriveLetter $driveLetter | Get-Disk
$diskModel = $diskInfo.Model.Trim() -replace ' ', '_'
$fsType = (Get-Volume -DriveLetter $driveLetter).FileSystem

# 3. 自動偵測:電源模式 (這對 8845HS 很重要)
$pPlan = (Get-CimInstance -Namespace root\cimv2\power -ClassName Win32_PowerPlan | Where-Object { $_.IsActive }).ElementName -replace ' ', ''

# 4. 參數提取 (Threads, QD, BlockSize, Mode, RW)
$tValue = ([regex]::Match($myArgs, "-t(\d+)").Groups[1].Value)
$oValue = ([regex]::Match($myArgs, "-o(\d+)").Groups[1].Value)
$bValue = ([regex]::Match($myArgs, "-b(\w+)").Groups[1].Value)
$mode = if ($myArgs -like "*-r*") { "Ran" } else { "Seq" }
$wValue = if ($myArgs -match "-w(\d+)") { $matches[1] } else { "0" }
$rwMode = if ($wValue -eq "100") { "Write" } elseif ($wValue -eq "0") { "Read" } else { "Mix$wValue" }

# 5. 檔名生成 (包含電源模式與備註)
# 範例: 8845HS_GM7000_D_NTFS_4K_Ran_Write_12t8qd_HighPerf_Idle_1227_1530.txt
$timestamp = Get-Date -Format "MMdd_HHmm"
$logfile = "$($driveLetter):\${computerName}_${diskModel}_$($driveLetter)_${fsType}_${bValue}_${mode}_${rwMode}_${tValue}t${oValue}qd_${pPlan}_${note}_$timestamp.txt"

# 6. 執行測試
Write-Host "--- 測試環境: $pPlan | $note ---" -ForegroundColor Yellow
"Command: diskspd.exe $myArgs" | Out-File -FilePath $logfile
Invoke-Expression "D:\diskspd.exe $myArgs" | Tee-Object -FilePath $logfile -Append

PS:忘了說 語法相容在powershell 剛剛請ai 幫忙生出來的語法,看到用一個單執行序測我挺難受的
確實讓我的ssd跑的快了很多,雖然我之前ssd丟過資料又找回了,所以我還是很珍惜它哈哈
ahung4831 wrote:
從某論壇看到...(恕刪)
, Good article
基準測試 (Benchmark),差異通常在 0% ~ 3% 之間,屬於誤差範圍。

在跑分軟體上可能有微幅差異,但在日常使用中,變快幾乎是心理作用,不過對於最新的 Gen5 SSD 而言,使用原生支援是必須且最穩的選擇。

開機速度、開啟 Chrome、Word 文書處理,完全感受不到差異。因為現在的 NVMe SSD(尤其是如果你用的 Gen5)速度瓶頸早已不在硬碟吞吐量,而是在軟體本身的執行效率。

如果你覺得變順了, 那多半是因為 Windows 11 23H2/24H2 對於檔案總管的 Bug 修復,或是新硬體本身強大的 4K 隨機讀取能力,而不是因為切換了什麼驅動設定。
reconail
以目前家用Win11作業平台, 系統碟SSD PCIe Gen4 或Gen3來跑, 其實 99%的差別只在價格跟溫度, 更別說PCIe Gen5了; 對家用者而言, 跑分都是浮雲, 看得到用不到.
systemctl
大多數人連從SATA SSD換成NVMe SSD都抱怨無感了,你還會去期待這種只是會降低CPU loading、磁碟iops大增的技術能讓你多有感??
來回之前GEN5的相容性問題..這個問題也算一個微軟的鍋..
大部份NVME SSD都是用標準NVM Express 控制器...
大部份G3.G4都是沒問題..但是我發現一個例外.
海力士P系SSD是用自版NVM控制器...對原生支援是排斥..
有用海力士要切換成公版用..才可以用原生支援...
結案..要原生支援就要用標準NVM Express 控制器..
開原生支援來跑RAID控制器...應該是原生無效化..
我也加上去

server 2025 得用這個
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\Microsoft\FeatureManagement\Overrides /v 1176759950 /t REG_DWORD /d 1 /f

若沒有 不會出現
systemctl
M8Peg還活著,跟我一樣,用到第9年頭,以前的MLC NAND真的強
雷斯俄斯
我也是,不過我的是128G的
關閉廣告
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!