Re: [請益] Intel NVMe Driver 觀念釐清

作者: tyfu (慎)   2018-04-19 08:00:28
小弟用自己的見解來回答這些問題,有錯請鞭小力點XD
※ 引述《delaluna ( ̄︶ ̄y)》之銘言:
: 大家好
: 最近在爬梳 intel NVMe 一些搞肛的問題
: 主要是基於本版三篇系列文: [請益] NVme跟AHCI問題請教
: #1NnGEYg5 (Storage_Zone)
: #1NnLq4T2 (Storage_Zone)
: #1Nnb57t4 (Storage_Zone)
: 以下從兩個層面請教:
: 1. Intel NVMe under AHCI or RAID
: (a) RAID Mode:
: Intel NVMe SSD 要能在 RST 介面管理,要將SATA控制器改為RAID模式
: ref: http://www.xfastest.com/thread-158897-1-1.html
: 此時 NVMe remapping 是OS下指令給RAID控制器再轉給 NVMe SSD
: 這個動作是在硬體層還是驅動層呢?
: (硬體層: OS -> PCH RAID Controller -> CPU -> PCIe SSD 感覺有點搞肛?)
嚴格來說這裡的RAID不是硬體、而是韌體,
這個RAID韌體同時管理SATA實體控制器以及RST Remapped的PCIe Port,
軟體層上來看OS -> RST Driver -> PCH RAID FW
NVMe碟機的指令就由FW自己來做,CPU在這有沒有插一腳我就不能確定了XD
: (b) AHCI Mode:
: NVMe SSD 在非RAID模式下運行的話就不能在RST介面管理,
: 但 remapping 是經由OS的PCIe enumeration
: 是直接由CPU的PCIe通道控制SSD?
: 這種方法是否路徑及延遲較短?
原設計概念是這樣沒錯,讓CPU直接存取NVMe,
但現在更大的瓶頸其實是軟體的系統架構,
因為對絕大多數OS而言NVMe還是儲存裝置、須掛載在DRAM的File System之下。
什麼意思?意思就是你所有Disk I/O資料還是得透過DMA回到DRAM,
NVMe資料到DRAM後才去跟CPU做Transaction,
完全沒有實現CPU直接存取NVMe,所以..這東西算是廢了= =
這也是為什麼絕大多數使用者從SATA SSD升級到NVMe SSD完全無感..
P.S. 我說的不是跑分、跑分沒有意義XD
: 2. Driver 與電源管理: OFA, RST, ... ?
: (a) Windows 內建:
: Windows NVMe driver 會讓SSD進入深層睡眠,
: 在斷斷續續的附載中容易影響效能。
: (b) SSD原廠提供的 OFA改:
: Samsung與Toshiba提供的驅動是基於OFA範本修改,
: 不讓SSD睡眠所以SSD一直維持高效能狀態。
: (c) Intel (RST?)
: RST則是在閒置時挑比較不那麼深層的睡眠,所以效能也比Windows內建好。
: 這裡所謂 RST 是指SATA控制器運作在RAID下,且裝了RST的意思嗎?
: 我看到 Intel 有出一個Windows的 NVMe driver:
: https://tinyurl.com/ybzobjks
: 這個driver是要在RAID模式才能裝還是可以在AHCI下就可以呢?
: 如果在非RAID模式(RST看不到)的狀況下裝這個驅動,
: 是否跟其他OFA驅動一樣,不用走RAID remapping,
: 且有較高效能的電源管理呢?
: 這個驅動的效果跟透過RST管理NVMe有何差異呢?
: 謝謝。
這隻驅動小弟還沒玩過、手邊沒有Intel的SSD可以灌,
但稍微看一下這支Driver的INF應該是掃PCI enumeration的Device,
意思就是RAID mode沒辦法灌,因為PCIe Port會被藏起來看不到,
理論上RAID mode底下應該只有RST這個選擇、因為你只能透過韌體控制NVMe。
至於是不是OFA基底、有沒有Power Management,
裝上去、下下看OFA的Pass through IOCTL應該就會有答案了XD
作者: jacksonx2000 (捷克森插兩千)   2018-04-20 18:03:00
之前把intel 750賣了換回三爽850pro果然是正確的

Links booklink

Contact Us: admin [ a t ] ucptt.com