我将在由三星 PM9A3 NVME 驱动器组成的 ZFS 卷上运行 Proxmox 客户机。我例如请阅读此处。保持这些驱动器的缓存处于活动状态可能会带来性能方面的优势。
所以我只是想检查一下情况是否如此,但我似乎缺乏一些技能。我尝试nvme get-feature -f 0x06 /dev/nvme0n1
检查功能 6,它应该在大多数驱动器上返回磁盘缓存是否存在的值。我的驱动器没有,它返回了NVMe status: Invalid Field in Command: A reserved coded value or an unsupported value in a defined field(0x2)
0x05 等功能,如预期的那样返回值。总的来说,这里只有 15 个功能。
因此我检查了nvme id-ctrl /dev/nvme0n1 -H
它返回的驱动器支持的全部功能。下面是一段摘录,除了其他几个部分外,还显示了“挥发性写入缓存”部分,这是三星对磁盘缓存的表达。
[2:1] : 0x3 The Flush command supports NSID set to FFFFFFFFh
[0:0] : 0 Volatile Write Cache Not Present
fna : 0x4
[3:3] : 0 Format NVM Broadcast NSID (FFFFFFFFh) Supported
[2:2] : 0x1 Crypto Erase Supported as part of Secure Erase
[1:1] : 0 Crypto Erase Applies to Single Namespace(s)
[0:0] : 0 Format Applies to Single Namespace(s)
awun : 1023
awupf : 7
icsvscc : 1
[0:0] : 0x1 NVM Vendor Specific Commands uses NVMe Format
nwpc : 0
[2:2] : 0 Permanent Write Protect Not Supported
[1:1] : 0 Write Protect Until Power Supply Not Supported
[0:0] : 0 No Write Protect and Write Protect Namespace Not Supported
不幸的是,我无法正确解释这一点,所以我不确定是否可以使用 get-feature / set-feature 命令解决其中任何一个问题。最后尝试使用标识符作为子命令,但nvme samsung vwc /dev/nvme1
似乎也无法与驱动器一起使用。
并且它读取起来像缓存未处于活动状态。
有任何想法吗?
答案1
三星 PM9A3 SSD 通过专用电容器提供断电保护的写回缓存。
这意味着这些磁盘没有易失性写入缓存。相反,它们为缓存数据提供数据持久性(即:它们具有非易失性缓存)。
线路
[0:0] : 0 Volatile Write Cache Not Present
证实了上述情况。