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

近日,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)寻址和字节粒度,具有更高的灵活性,可以更精细地定位和处理数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/661841.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python-分享篇-Turtle海龟-画图

文章目录 背景颜色画圆太阳花树椭圆 背景颜色 import turtlepen turtle.Turtle() turtle.Screen().bgcolor("blue") pen.color("cyan") for i in range(10):for i in range(2):pen.forward(100)pen.right(60)pen.forward(100)pen.right(120)pen.right(36…

供应商规模成倍增长,医疗器械制造商如何让采购效率更进一步|创新场景50...

ITValue 随着企业的快速发展,采购供应链网络日益庞大,企业在供应商管理上面临着管理体系分散、风险难以管控,采购过程环节多等问题,供应商内外协同亟待解决。 作者|秦聪慧 专题|创新场景50 ITValue 制造企业…

Node.js之内存限制理解_对处理前端打包内存溢出有所帮助

Node.js内存限制理解_对处理前端打包内存溢出有所帮助 文章目录 Node.js内存限制理解_对处理前端打包内存溢出有所帮助Node.js内存限制1. 查看Node.js默认内存限制1. Ndos.js_V20.10.02. Node.js_V18.16.0 2. V8引擎垃圾回收相关Heap organization堆组织 Node.js内存限制 默认情…

Lazysysadmin

信息收集 # nmap -sn 192.168.1.0/24 -oN live.port Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-30 21:10 CST Nmap scan report for 192.168.1.1 (192.168.1.1) Host is up (0.00075s latency). MAC Address: 00:50:56:C0:00:08 (VMware) Nma…

Docker容器化安装SonarQube9.9

文章目录 1.环境准备1.1 版本信息1.2 系统设置 2.Docker环境安装2.1 卸载旧版本2.2 设置源2.3 安装Docker2.4 设置阿里仓库2.5 启动Docker 3.Docker Compose4.登录4.1 首页4.2 安装插件 5.制作镜像离线安装 1.环境准备 1.1 版本信息 名称版本备注Docker25.0.1当前2024-01-01最…

《C程序设计》上机实验报告(五)之一维数组二维数组与字符数组

实验内容&#xff1a; 1.运行程序 #include <stdio.h> void main( ) { int i,j,iRow0,iCol0,m; int x[3][4]{{1,11,22,33},{2,28,98,38},{3,85,20,89}}; mx[0][0]; for(i0;i<3;i) for(j0;j<4;j) if (x[i][j]>m) { mx[i][j]; iRowi…

Elasticsearch:将文档级安全性 (DLS) 添加到你的内部知识搜索

作者&#xff1a;来自 Elastic Sean Story 你的企业很可能淹没在内部数据中。 你拥有问题跟踪、笔记记录、会议记录、维基页面、视频录制、聊天以及即时消息和私信。 并且不要忘记电子邮件&#xff01; 难怪如此多的企业都在尝试创造工作场所搜索体验 - 为员工提供集中、一站…

react 之 UseReducer

UseReducer作用: 让 React 管理多个相对关联的状态数据 import { useReducer } from react// 1. 定义reducer函数&#xff0c;根据不同的action返回不同的新状态 function reducer(state, action) {switch (action.type) {case INC:return state 1case DEC:return state - 1de…

【飞书小技巧】——飞书文档转 markdown 详细教程

飞书文档转 markdown 详细教程 基于项目:https://github.com/Wsine/feishu2md 如何使用 在线版 访问 https://feishu2md.onrender.com/ 粘贴文档链接即可&#xff0c;文档链接可以通过 分享 > 开启链接分享 > 复制链接 获得。 点击下载之后,会提示 Please wait. It ma…

2024/2/1学习记录

echarts 为柱条添加背景色&#xff1a; 若想设置折线图的点的样式&#xff0c;设置 series.itemStyle 指定填充颜色就好了&#xff0c;设置线的样式设置 lineStyle 就好了。 在折线图中倘若要设置空数据&#xff0c;用 - 表示即可&#xff0c;这对于其他系列的数据也是 适用的…

【C/C++】C/C++编程——整型(二)

在 C 中&#xff0c;整型数据可以分为有符号数&#xff08;Signed&#xff09;和无符号数&#xff08;Unsigned&#xff09;&#xff0c;这两种类型主要用于表示整数值&#xff0c;但它们在表示范围和用途方面有所不同。默认情况下&#xff0c;整数类型如 int、short、long 都是…

中科大计网学习记录笔记(三):接入网和物理媒体

前言&#xff1a; 学习视频&#xff1a;中科大郑烇、杨坚全套《计算机网络&#xff08;自顶向下方法 第7版&#xff0c;James F.Kurose&#xff0c;Keith W.Ross&#xff09;》课程 该视频是B站非常著名的计网学习视频&#xff0c;但相信很多朋友和我一样在听完前面的部分发现信…

基于tidevice实现iOS app自动化使用详解

目录 1、IOS自动化工具概述 2、tidevice工具的原理和使用 2.1、tidevice的原理 2.2、tidevice实现的功能 2.3、tidevice的安装 2.4、tidevice的使用 2.4.1、设备管理 1、查看已连接的设备的列表 2、检测设备连接状态 3、等待设备连接&#xff0c;只要有就连接就结束监…

2024-01-06-AI 大模型全栈工程师 - 如何训练百亿参数大模型

摘要 2024-01-06 周六 杭州 晴 本节内容: 讲座模式&#xff0c;学习大模型训练的相关流程。 课程内容 1. Transformer 回顾 2. 模型架构-生成式 3. 预训练数据的构建 4. 中文字典的构建 4. 预训练目标的构建 5. 预训练相关-预训练策略 6. 预训练相关-并行化训练 7. 预训练…

搭建高效企业培训平台:教育系统源码开发详解

为了更好地满足企业培训的需求&#xff0c;许多组织纷纷转向数字化教育&#xff0c;搭建高效的企业培训平台成为当务之急。本篇文章&#xff0c;小编将为您讲解教育系统源码的开发细节&#xff0c;为搭建一个功能强大、灵活高效的企业培训平台提供详尽的指南。 一、教育系统的…

Django响应(一)

一、HttpResponse与JsonResponse 1.1、HttpResponse 官网:https://docs.djangoproject.com/zh-hans/4.1/ref/request-response/#django.http.HttpResponse 返回给浏览器端的响应对象 from django.http import HttpResponse response = HttpResponse("Heres the text o…

程序的内存模型

师从黑马程序员 内存分区模型 内存大方向划分为4个区域 1、代码区&#xff1a;存放函数体的二进制代码&#xff0c;由操作系统管理的 2、全局区&#xff1a;存放全局变量环和静态变量以及常量 3、栈区&#xff1a;由编译器自动分配释放&#xff0c;存放函数的参数值&#…

H12-811_503

503.如下图所示&#xff0c;下列说法正确是&#xff1f;( ) A.主机A和主机B的广播地址相同 B.主机A可以ping通主机B C.主机A和主机B不能获取对方的MAC地址 D.主机A的ARP缓存中存在如下条目10.0.12.5 MAC-B 答案&#xff1a;C 注释&#xff1a; 两个主机IP地址的网…

四大组件 - ContentProvider

参考&#xff1a;Android 这 13 道 ContentProvider 面试题&#xff0c;你都会了吗&#xff1f; 参考&#xff1a;《Android 开发艺术探索》 第 9.5 节&#xff08;ContentProvider 的工作过程&#xff09; 参考&#xff1a;内容提供者程序 参考&#xff1a;<provider>&g…

Nucleosome, Recombinant Human, H2BK120ub1 dNuc, Biotinylated

EpiCypher&#xff08;国内授权代理商欣博盛生物&#xff09;是一家为表观遗传学和染色质生物学研究提供高质量试剂和工具的专业制造商。EpiCypher生产的在E. coli中表达的重组人单核小体(组蛋白H2A、H2B、H3和H4各2个;accession numbers:H2A-P04908;H2B-O60814;H3.1-P68431;H4…