深度解读NVMe计算存储协议-2

NVMe组织近期开发了计算存储特性,包括计算程序集和子系统本地内存,以优化数据处理。计算命名空间引入了新的内存管理和计算功能,如Loadprogram和Activateprogram,提升数据处理效率。内存命名空间提供访问NVM子系统内存的新接口,支持直接数据操作和跨命名空间数据复制。
摘要由CSDN通过智能技术生成

近日,NVME协议组织为了解决这些性能问题并为供应商提供标准化机制,在其架构中集成优化的计算功能,开发了NVM Express® (NVMe®) 计算存储特性。

图片

计算存储的核心特性包括两个命令集:计算程序集和子系统本地内存

  • 其中,计算程序集允许NVMe设备在非易失性存储器(NVM)子系统上操作数据,通过命令管理在设备上进行计算的程序。

图片

  • 而子系统本地内存则支持通过NVMe I/O命令经由NVMe传输协议访问NVM子系统的本地内存,同时还包含了读取、写入及复制用户数据到设备内存的新命令。

图片

NVMe Express(NVMe)计算存储架构设计了一个包含多种类型命名空间的系统,这些命名空间各自具有特定的功能和用途:

图片

  1. 计算命名空间 (Compute namespaces):这是新引入的一种命名空间概念,专为在存储设备内部执行计算任务而设计。计算命名空间中包含计算资源,允许直接在存储设备上进行数据处理,从而减少数据传输到主机CPU再返回存储设备的过程,提升整体性能和效率。

在NVMe计算存储子系统中,Computational Programs(计算程序)是一个关键特性,它们概念上类似于软件中的函数或算法模块。这些程序在执行时会接收参数,并在完成所有任务后结束运行。

  • Load program:允许主机加载程序到计算命名空间中,这些程序可以是预置的或者由主机下载的。

  • Activate program:激活已加载到计算命名空间中的程序,使其准备就绪以执行相应的数据处理操作。

图片

  • 通过计算命名空间索引访问:计算程序可以通过计算命名空间中的程序索引来寻址和调用。

  • 全球唯一标识符识别:每个计算程序可能有一个全球唯一的标识符(Program Unique Identifier),确保了在任何环境下都能唯一地识别并调用特定的计算程序。

  • 仅处理本地内存数据:计算程序只针对存储子系统内部的Subsystem Local Memory(SLM)中的数据进行操作,避免了频繁的数据迁移,从而提高了性能和效率。Create/Delete Memory Range Set (MRS)创建或删除内存范围集,这是一种定义了子系统本地内存(SLM)内特定内存区域的结构,确保只有指定范围内的数据可供程序访问,增强了安全性并优化了资源使用效率。

  • 设备预定义与可下载性:计算程序可以是设备制造商预先内置在硬件中的固定功能程序,例如出厂时提供的压缩、加密等服务;也可以是由主机加载到计算命名空间中的可下载程序,这意味着用户可以根据需要动态添加新的计算逻辑。

  • 资源限制性执行:一个计算程序可能只能在一个NVMe子系统内的一部分计算资源上执行,即并非所有计算单元都支持执行所有的计算程序。

  • 实现方式多样性:计算程序可以在不同类型的硬件平台上实现,如专用集成电路(ASIC),这种情况下,计算逻辑直接固化在芯片内部;或者在CPU核心上执行,此时计算程序是以软件形式运行于处理器之上。

  1. 内存命名空间 (Memory namespaces):这也是新提出的命名空间类型,它为主机提供了访问NVM子系统内内存资源的接口。内存命名空间使用了新的“子系统本地内存I/O命令集”,并且与计算程序命令集相互作用,使得计算程序能够在SLM(Subsystem Local Memory)中执行。通过这个命名空间,可以实现对SLM的读写操作以及在不同命名空间间的数据复制,例如从NVM命名空间或其他内存命名空间向内存命名空间复制数据。

新引入的针对内存命名空间的子系统本地内存I/O命令集中包含了一系列新的命令:

  • 内存读取(Memory read)和内存写入(Memory write)命令允许主机与SLM之间进行直接的数据读写操作。

  • 数据传输命令支持主机内存与内存命名空间之间的数据交换。

  • 内存复制(Memory copy)命令则用于将数据从非易失性存储命名空间(NVM namespaces)或其它内存命名空间复制到目标内存命名空间中。

在访问粒度方面,有以下特点:

  • 主机对内存命名空间的访问是以双字(dword)为寻址单位和访问粒度的,这意味着主机每次操作都是按双字大小进行的。

  • 而计算命名空间对SLM的访问则是基于字节(byte)寻址和字节粒度,具有更高的灵活性,可以更精细地定位和处理数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

古猫先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值