-
NVMe-IO-3:
由于设备具有掉电保护功能(如Power Loss Protection,PLP),因此在以下情况下,性能不应降低:
FUA(Force Unit Access) :是计算机存储设备中的一种命令标志或选项。在数据写入操作中,当主机发出带有FUA标志的写入命令时,它强制存储设备直接将数据写入到非易失性存储介质上,而不是先写入缓存中。
在正常情况下,存储设备可能会使用缓存来提高写入性能。数据首先被写入缓存,然后在后台异步地转移到非易失性存储介质。这种方式可以减少实际写入物理介质所需的时间,从而提高系统的整体性能。
当FUA被设置时,存储设备会确保数据直接写入到非易失性存储介质上,然后再返回写入完成的确认给主机。这样可以保证在任何情况下,数据都已经安全地存储在设备上,即使立即发生电源故障也不会丢失。
Flush Cache:由于PLP使得任何缓存都变为非易失性,因此刷新缓存不应有任何影响。
Volatile Write Cache(特性标识符06h):设置禁用写缓存的功能,这部分在NVME协议中也有对应的定义
-
NVMe-IO-4/5/6/7:
设备应支持Write Zeroes命令,并支持以下设置:
-
-
De-allocate (DEAC) :用于指示设备是否应在写入零的同时释放已分配的空间。
-
Force Unit Access (FUA) :用于指示设备是否应立即将数据写入持久化存储介质。
-
如果Write Zeroes命令的DEAC位设置为1b,且FUA位清除为0b,设备应释放指定的块,并在随后对指定块的任何读取操作中返回零值,直到被其他命令(如Write, Copy等)修改,无论Dataset Management命令的行为如何。
同时这种情况下,OCP要求,一个或多个Write Zeroes命令应当能够在一分钟内完全释放整个设备,包括更新FTL(Flash Translation Layer)映射。
-
NVMe-IO-8:
设备应支持Compare命令,该命令用于比较设备上的数据和主机提供的数据。
-
NVMe-IO-9:
设备应支持Compare and Write fused command pair,这是一种将比较和写入操作组合在一起的优化命令,可以提高效率。
-
NVMe-IO-10/11/12/13/14:
设备应支持Write Uncorrectable命令,该命令用于标记无法纠正的逻辑块地址(LBAs)。支持以单个LBA的粒度标记LBAs为不可纠正,而不考虑FTL间接寻址粒度中的LBA数量。
关于Write Uncorrectable命令注入的UNC报错信息,NVME协议并没有给出明确要求,是否要包含在SMART Media Error技术之中。
但是,在OCP规范中,明确要求Write Uncorrectable命令注入的不可纠正错误(例如读取错误)不应计入Smart / Health Information(日志标识符02h)的Media and Data Integrity Errors字段。
小编每日撰文不易,如果您看完有所受益,欢迎点击文章底部左下角"关注 "并点击"分享 "、"在看",非常感谢!
精彩推荐: