OCP NVME SSD规范解读-4.NVMe IO命令-2

  1. NVMe-IO-3:

    由于设备具有掉电保护功能(如Power Loss Protection,PLP),因此在以下情况下,性能不应降低:

FUA(Force Unit Access) :是计算机存储设备中的一种命令标志或选项。在数据写入操作中,当主机发出带有FUA标志的写入命令时,它强制存储设备直接将数据写入到非易失性存储介质上,而不是先写入缓存中。

在正常情况下,存储设备可能会使用缓存来提高写入性能。数据首先被写入缓存,然后在后台异步地转移到非易失性存储介质。这种方式可以减少实际写入物理介质所需的时间,从而提高系统的整体性能。

当FUA被设置时,存储设备会确保数据直接写入到非易失性存储介质上,然后再返回写入完成的确认给主机。这样可以保证在任何情况下,数据都已经安全地存储在设备上,即使立即发生电源故障也不会丢失。

Flush Cache:由于PLP使得任何缓存都变为非易失性,因此刷新缓存不应有任何影响。

Volatile Write Cache(特性标识符06h):设置禁用写缓存的功能,这部分在NVME协议中也有对应的定义

  1. 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)映射

  1. NVMe-IO-8:

    设备应支持Compare命令,该命令用于比较设备上的数据和主机提供的数据。

  2. NVMe-IO-9:

    设备应支持Compare and Write fused command pair,这是一种将比较和写入操作组合在一起的优化命令,可以提高效率。

  3. 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字段

小编每日撰文不易,如果您看完有所受益,欢迎点击文章底部左下角"关注 "并点击"分享 "、"在看",非常感谢!

精彩推荐:

相关推荐
我是唐青枫5 分钟前
.NET AOT 详解
java·服务器·.net
小于不是小鱼呀6 分钟前
手撕 K-Means
人工智能·算法·机器学习
藥瓿亭12 分钟前
K8S认证|CKS题库+答案| 4. RBAC - RoleBinding
linux·运维·服务器·云原生·容器·kubernetes·cks
SelectDB技术团队14 分钟前
从 ClickHouse、Druid、Kylin 到 Doris:网易云音乐 PB 级实时分析平台降本增效
大数据·数据仓库·clickhouse·kylin·实时分析
lilye6619 分钟前
精益数据分析(95/126):Socialight的定价转型启示——B2B商业模式的价格策略与利润优化
人工智能·数据挖掘·数据分析
吐泡泡_28 分钟前
Linux(线程控制)
linux
Hero_HL33 分钟前
Towards Open World Object Detection概述(论文)
人工智能·目标检测·计算机视觉
远方160937 分钟前
10-Oracle 23 ai Vector Search 概述和参数
人工智能·oracle
fydw_71543 分钟前
Celery 核心概念详解及示例
人工智能·机器学习