万字长文|下一代系统内存数据加速接口SDXI解读

本文内容分为5章节,总计10535字,内容较多,建议先收藏

1.SDXI技术产生的背景

2.SDXI相比DMA的优势

3.SDXI实现原理与架构

    3.1 描述符环原理解读
    3.2 上下文管理介绍
    3.3 AKey与RKey解读
    3.4 错误日志和状态管理
    3.5 跨Function访问

4.SDXI与CXL协同原理

5.SDXI几种应用场景


1.SDXI技术产生的背景

在传统计算模式中,数据在不同组件间移动往往依赖于软件层面的处理,例如常见的内存复制操作(memcpy),这种方式虽然稳定,但会占用宝贵的处理器周期,导致应用性能下降。同时,传统的数据移动缺乏有效的虚拟化支持,且各厂商的直接内存访问(DMA)引擎及其接口没有统一的标准,给用户级软件的利用带来了不便。

此外,异构计算环境的兴起,包括CPU、GPU、FPGA、NICs等ASSPs(应用专用标准产品)的融合,以及虚拟化和容器化的普及,都对数据移动提出了更高要求。

SDXI(Smart Data Accelerator Interface,智能数据加速接口)标准正是在这样的背景下应运而生,它的设计旨在解决上述问题,提供了一个标准化、可扩展、面向未来的内存到内存数据移动和加速接口。

这个接口独立于I/O互连技术,意味着无论底层硬件如何变化,只要遵循SDXI标准,软件都能保持良好的兼容性和稳定性。SDXI标准特别强调了对虚拟化友好的编程接口,支持用户模式和内核模式操作,旨在加速虚拟化工作负载。

SDXI标准的制定工作由SNIA SDXI技术工作小组(TWG)负责,该小组成立于2020年6月,汇聚了行业内多个领先企业的技术力量。根据记录,SDXI v1.0版本的贡献者包括来自多家知名公司,主要包括惠普企业(HPE)、戴尔(Dell)、IBM、AMD、Micron、NetApp、SK海力士、西部数据、三星、微软等23家会员公司,以及89名个人成员。

2022年正式发布了SDXI v1.0版本,标志着一个全新的数据移动加速时代开启,为高性能计算、人工智能、数据中心存储等领域带来革新。

2.SDXI相比DMA的优势

DMA数据移动器是一种硬件机制,旨在减轻CPU执行循环数据复制任务的负担,从而释放CPU周期以执行其他计算密集型任务。这一技术的引入,旨在提高系统整体的性能和效率,特别是在大量数据传输操作频繁发生的场景下。

扩展阅读:

  • 浅析CXL P2P DMA加速数据传输的原理

  • PCIe P2P DMA全景解读

尽管DMA数据移动器的概念已被广泛认识,其应用却主要局限于特定的、具有特权的软件和I/O场景中。这些场景通常涉及到高度特定化的设备接口,这些接口往往不具备向前兼容性。具体来说,这种限制在两个方面尤为突出:

  1. 非虚拟化环境中的用户态应用挑战:在没有虚拟化的环境中,由于DMA数据移动器的使用受限于特定的、非通用的接口,普通用户态应用很难直接利用DMA来提升数据处理性能。这主要是因为DMA操作通常需要较高的系统权限,而普通用户态程序默认不具备这样的权限。

  2. 多租户虚拟化环境下的近乎不可能性:在多租户的虚拟化环境中,情况更为复杂。在这种环境下,多个虚拟机共享物理资源,每个虚拟机都有自己的内存空间和隔离的执行环境。使用传统的DMA机制,不仅需要解决如何安全地跨虚拟机边界移动数据的问题,还要解决如何在不破坏虚拟机隔离性的前提下,有效地分配和管理DMA资源。由于传统的DMA设备接口缺乏对虚拟化环境的支持,使得在这样的环境中实现高效的DMA数据传输变得极为困难,几乎不可行。

SDXI作为一个标准化、可扩展、独立于I/O互联技术的内存到内存数据移动和加速接口,旨在打破传统DMA的局限,使得数据移动在现代异构计算环境中变得更加高效和灵活。

SDXI Platform Data Mover是一个创新的技术框架,它设计用于克服现有数据移动解决方案的一系列局限性,从而满足现代计算环境中日益增长的高效数据处理需求。SDXI的优势的具体包括以下几个内容:

  1. 可扩展、向前兼容的接口:SDXI提供了一个与具体数据移动实现及底层I/O互连技术无关的接口,意味着无论未来数据传输技术如何演进,只要遵循SDXI规范,新旧硬件和软件就能保持良好的兼容性。这种设计允许SDXI随技术进步不断纳入新功能而不至于过时。

  2. 用户模式数据移动的标准接口:一旦连接建立,SDXI允许在用户模式下直接进行地址空间之间的数据移动,无需特权软件介入,降低了数据传输的复杂度和延迟,提高了应用层的性能。

  3. 特权软件控制接口:SDXI定义了一套标准接口,供特权软件(如hypervisors或系统管理层)来管理数据移动器的连接状态和跨多个地址空间的数据传输,增强了系统的可控性和安全性。

  4. 可抽象化或虚拟化的接口:SDXI支持其接口被特权软件抽象或虚拟化,这样可以更容易地在不同的服务器之间迁移工作负载或虚拟机,增强了跨平台的兼容性和灵活性,对于云环境尤其重要。

  5. 明确的暂停、恢复能力:SDXI具有清晰定义的能力,可以暂停、恢复每个地址空间数据移动器的架构状态,这对于实现实时工作负载或虚拟机在服务器间的迁移至关重要,有助于实现无中断的维护和动态资源调度。

  6. 确保向前兼容的接口:SDXI设计确保了现有的软件驱动程序,包括用户模式驱动,能在未来的硬件实现上无需修改即可运行,减少了因硬件升级导致的软件适配成本和时间。

SDXI通过提供一个灵活、高效、兼容性强的数据移动平台,解决了传统数据处理架构在性能、兼容性、虚拟化支持等方面的不足,为云计算、数据中心管理、高性能计算等领域带来了重大的技术进步。

后续3-5章节,请参考:点击这里,继续阅览SDXI章节3-5详细内容

3.SDXI实现原理与架构

    3.1 描述符环原理解读
    3.2 上下文管理介绍
    3.3 AKey与RKey解读
    3.4 错误日志和状态管理
    3.5 跨Function访问

4.SDXI与CXL协同原理

5.SDXI几种应用场景

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

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

相关文章

ctfshow web入门 sqli-libs web552--web560

web552 宽字节注入 嗯原理我就不讲了,还是有点复杂后面有时间讲讲 总而言之就是用汉字把\的转义作用抵消了然后正常注入即可 ?id-1包 union select 1,2,3--?id-1包union select 1,(select group_concat(table_name) from information_schema.tables where tab…

事过无悔:人生中的释怀之道

在纷繁复杂的人生旅途中,我们常常会面临各种选择。这些选择,如同指引我们前行的路标,有时让我们欣喜,有时让我们遗憾。然而,我渐渐发现,事过无悔,是我们在面对这些选择时最顶级的释怀之道。 首…

MySQL 常见存储引擎详解(一)

本篇主要介绍MySQL中常见的存储引擎。 目录 一、InnoDB引擎 简介 特性 最佳实践 创建InnoDB 存储文件 二、MyISAM存储引擎 简介 特性 创建MyISAM表 存储文件 存储格式 静态格式 动态格式 压缩格式 三、MEMORY存储引擎 简介 特点 创建MEMORY表 存储文件 内…

节点级、系统级、实车级的LIN测试主要差异点

文章目录 前言一、节点级1.前期准备2.测试执行 二、系统级1.前期准备2.测试执行 三、实车级1.前期准备2.测试执行 总结 前言 LIN协议一致性测试主要指的是物理层(电阻、电容、电压、地偏移、显隐性电平、频率占空比、位时间等)、数据链路层(…

window用户层文件系统fuse(wdm驱动)

dokany https://github.com/dokan-dev/dokany.git 需要安装wdk,2022可以直接通过windows driver扩展安装 项目使用nuget添加wdk依赖 Version of Uwp Package 10.0.26100.0 does not match TargetPlatformVersion 10.0.22621.0. windows sdk版本填写正确的版本号…

算法实验2.2、2.3

2.2主要内容 比较快速排序&#xff0c;归并排序以及堆排序算法的时间效率。了解影响算法执行时间的 主要因素以及如何降低算法的执行时间。 #include<iostream> using namespace std; #include<stdio.h> #include<malloc.h> #include<stdlib.h> #inc…

【论文阅读】-- 研究时间序列可视化,提升用户体验

Investigating Time Series Visualisations to Improve the User Experience 摘要1 引言2 相关工作互动技巧视觉编码坐标系 3 用户研究时间序列可视化互动技巧任务实验设计 4 结果交互技术的效果视觉编码的影响坐标系的影响 5 讨论交互技术的效果视觉编码的影响坐标系的影响 6 …

芒果YOLOv10改进122:注意力机制系列:最新结合即插即用CA(Coordinate attention) 注意力机制,CVPR 顶会助力分类检测涨点!

论文所提的Coordinate注意力很简单,可以灵活地插入到经典的移动网络中,而且几乎没有计算开销。大量实验表明,Coordinate注意力不仅有益于ImageNet分类,而且更有趣的是,它在下游任务(如目标检测和语义分割)中表现也很好。本文结合目标检测任务应用 应专栏读者的要求,写一…

cube-studio开源一站式机器学习平台,在线ide,jupyter,vscode,matlab,rstudio,ssh远程连接,tensorboard

全栈工程师开发手册 &#xff08;作者&#xff1a;栾鹏&#xff09; 一站式云原生机器学习平台 前言 开源地址&#xff1a;https://github.com/tencentmusic/cube-studio cube studio 腾讯开源的国内最热门的一站式机器学习mlops/大模型训练平台&#xff0c;支持多租户&…

【Linux】:环境变量

朋友们、伙计们&#xff0c;我们又见面了&#xff0c;本期来给大家解读一下有关Linux环境变量的相关知识点&#xff0c;如果看完之后对你有一定的启发&#xff0c;那么请留下你的三连&#xff0c;祝大家心想事成&#xff01; C 语 言 专 栏&#xff1a;C语言&#xff1a;从入门…

mac|浏览器链接不上服务器但可以登微信

千万千万千万不要没有关梯子直接关机&#xff0c;不然就会这样子呜呜呜 设置-网络&#xff0c;点击三个点--选择--位置--编辑位置&#xff08;默认是自动&#xff09; 新增一个&#xff0c;然后选中点击完成 这样就可以正常上网了

【嵌入式DIY实例】- LCD ST7735显示DHT11传感器数据

LCD ST7735显示DHT11传感器数据 文章目录 LCD ST7735显示DHT11传感器数据1、硬件准备与接线2、代码实现本文介绍如何将 ESP8266 NodeMCU 板 (ESP-12E) 与 DHT11 (RHT01) 数字湿度和温度传感器连接。 NodeMCU 从 DHT11 传感器读取温度(以 C 为单位)和湿度(以 rH% 为单位)值,…

计算机网络-第5章运输层

5.1运输层协议概述 5.1.1进程之间的通信 运输层向它上面的应用层提供通信服务&#xff0c;它属于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层。 通信的两端应当是两个主机中的应用进程。 运输层复用和分用&#xff1a;复用指在发送方不同的应用进程都可以…

【机器学习】FFmpeg+Whisper:二阶段法视频理解(video-to-text)大模型实战

目录 一、引言 二、FFmpeg工具介绍 2.1 什么是FFmpeg 2.2 FFmpeg核心原理 2.3 FFmpeg使用示例 三、FFmpegWhisper二阶段法视频理解实战 3.1 FFmpeg安装 3.2 Whisper模型下载 3.3 FFmpeg抽取视频的音频 3.3.1 方案一&#xff1a;命令行方式使用ffmpeg 3.3.2 方案二&a…

基于协同过滤的电影推荐与大数据分析的可视化系统

基于协同过滤的电影推荐与大数据分析的可视化系统 在大数据时代&#xff0c;数据分析和可视化是从大量数据中提取有价值信息的关键步骤。本文将介绍如何使用Python进行数据爬取&#xff0c;Hive进行数据分析&#xff0c;ECharts进行数据可视化&#xff0c;以及基于协同过滤算法…

SuperMap GIS基础产品FAQ集锦(20240701)

一、SuperMap iDesktopX 问题1&#xff1a;对于数据提供方提供的osgb格式的数据&#xff0c;如何只让他生成一个s3mb文件呢&#xff1f;我用倾斜入库的方式会生成好多个s3mb缓存文件 11.1.1 【解决办法】不能控制入库后只生成一个s3mb文件&#xff1b;可以在倾斜入库的时候设…

2024第17届中国西部(重庆)留学移民海外置业展览会

2024第17届中国西部&#xff08;重庆&#xff09;留学移民海外置业展览会 邀请函 主办单位&#xff1a; 中国西部教体医融合博览会组委会 承办单位&#xff1a;重庆中博展览有限公司 展会背景&#xff1a; 成都和重庆是中国新一线城市&#xff0c;是西部经济的核心增长极&a…

代码随想录算法训练营第59天:动态[1]

代码随想录算法训练营第59天&#xff1a;动态 两个字符串的删除操作 力扣题目链接(opens new window) 给定两个单词 word1 和 word2&#xff0c;找到使得 word1 和 word2 相同所需的最小步数&#xff0c;每步可以删除任意一个字符串中的一个字符。 示例&#xff1a; 输入: …

实施粘贴式导航_滚动事件

● 所谓的粘贴式导航&#xff0c;就是当我们滑动页面到某一个位置的时候&#xff0c;导航不会因为滑动而消失&#xff0c;会固定在页面的顶部&#xff0c;我们来看一下如何实现&#xff1b; ● 首先我们要获取我们想要滚动到哪一部分的时候让导航栏显示出来&#xff0c;这就需要…

Java案例抢红包

目录 一&#xff1a;题目要求&#xff1a; 二&#xff1a;思路分析&#xff1a;&#xff08;遇见问题先想出完整的思路逻辑再去动手事半功倍&#xff09; 三&#xff1a;具体代码&#xff1a; 一&#xff1a;题目要求&#xff1a; 二&#xff1a;思路分析&#xff1a;&#x…