Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >NVMe协议及视频转码应用

NVMe协议及视频转码应用

作者头像
用户1324186
发布于 2018-12-24 07:55:41
发布于 2018-12-24 07:55:41
3.7K0
举报
文章被收录于专栏:媒矿工厂媒矿工厂

摘要:

NVMe(非易失性存储器Express)是一种用于访问高速存储介质的新协议,与传统协议相比具有许多优势。大规模数据的性能,经济性和耐久性至关重要。NVMe对企业及其如何处理数据产生了巨大影响,特别是用于实时分析和新兴技术的快速数据。业内已经出现基于该协议的高密度视频转码方案,我们来一探究竟。

NVM协议简介

NVMe的演变

第一批基于闪存的SSD利用传统的SATA / SAS物理接口,协议和外形,最大限度地减少现有基于硬盘(HDD)的企业服务器/存储系统的变化。但是,这些接口和协议都没有设计用于高速存储介质(即NAND和/或永久存储器)。由于接口速度,新存储介质的性能以及与CPU的接近程度,PCI Express(PCIe)是下一个逻辑存储接口。

PCIe插槽直接连接到CPU,提供类似内存的访问,并可运行非常高效的软件堆栈。但是,早期的PCIe接口SSD没有行业标准,也没有企业功能。杠杆专有固件的PCIe固态硬盘,这是特别具有挑战性的用于系统的缩放因各种原因,其中包括:a)运行和维护设备固件,b)用不同的系统软件的固件/设备的不兼容性,c)不总是使可用的车道和CPU的最佳利用接近度,以及d)缺乏企业工作负载的增值功能。NVMe规范的出现主要是应对这些挑战。

什么是NVMe?

NVMe是一种高性能的NUMA(非统一内存访问)优化和高度可扩展的存储协议,可将主机连接到内存子系统。该协议相对较新,功能丰富,并且从头开始设计用于通过PCIe接口直接连接到CPU的非易失性存储介质(NAND和永久存储器)(见图1)。该协议建立在高速PCIe通道上。PCIe Gen 3.0链路可提供比SATA接口高2倍以上的传输速度。

图1 CPU通过PCIe接口与I/O控制器和HBA连接SSD

NVMe价值主张

NVMe协议利用与底层媒体的并行,低延迟数据路径,类似于高性能处理器架构。与传统的SAS和SATA协议相比,这提供了更高的性能和更低的延迟。这不仅可以加速需要高性能的现有应用程序,还可以为数据中心和Edge中的实时工作负载处理提供新的应用程序和功能。

传统协议消耗许多CPU周期以使数据可用于应用程序。这些浪费的计算周期使企业真正赚钱。IT基础架构预算没有按照数据的速度增长,并且面临着最大化基础设施回报的巨大压力 - 无论是在存储还是计算方面。由于NVMe可以通过较小的基础架构占用来处理严格的应用程序工作负载,因此企业可以降低总体拥有成本并加速顶线业务增长。

NVMe架构 - 了解I/O队列

让我们深入探讨NVMe架构以及它如何实现高性能和低延迟。NVMe可以支持多个I/O队列,最多64K,每个队列有64K条目。传统SAS和SATA只能支持单个队列,每个队列可以分别拥有254和32个条目。根据系统配置和预期工作负载,NVMe主机软件可以创建最多NVMe控制器允许的最大队列。NVMe支持分散/收集IO,最大限度地减少数据传输的CPU开销,甚至可以根据工作负载要求更改其优先级。

下图(图2)是主机和NVMe控制器之间通信的简化视图。该架构允许应用程序同时启动,执行和完成多个I/O请求,并以最有效的方式使用底层媒体,以最大限度地提高速度并最大限度地减少延迟。

NVMe命令如何工作?

这种方式的工作方式是主机写入I/O命令队列和门铃寄存器(I/O命令就绪信号); 然后,NVMe控制器选择I/O命令队列,执行它们并发送I/O完成队列,然后向主机发送中断。主机记录I/O完成队列并清除门控寄存器(I/O命令完成信号),见图2。与SAS和SATA协议相比,这可以显着降低开销。

图2 简化的NVMe架构视图

为什么NVMe从多核处理器获得最佳性能

如上所述,NVMe是NUMA优化协议。这允许多个CPU核心共享队列的所有权,它们的优先级,以及仲裁机制和命令的原子性。因此,NVMe SSD可以分散/收集命令并反过来处理它们,以提供更高的IOPS和更低的数据延迟。

NVMe协议创新功能

NVMe专为高性能和非易失性存储介质而设计,是唯一在高要求和计算密集型企业,云和边缘数据生态系统中脱颖而出的协议。NVMe协议的性能不仅对数据驱动的工作负载具有重要意义,还具有一些非常创新的功能,可为现有工作负载带来独特优势,并为新应用程序提供开放式可能性。

无需自定义设备驱动程序

早期PCIe连接的SSD都需要自己的设备驱动程序来做任何事情。如果用户要升级操作系统,交换操作系统或虚拟机管理程序,或者甚至只升级带有安全补丁的内核,则通常需要部署全新的设备驱动程序来访问SSD。这是一个容易出错,引发头痛的过程,并没有直接使企业受益。 不过NVMe SSD在主要的现代操作系统和虚拟机管理程序中都是开箱即用的。由于接口已标准化,因此单个设备驱动程序可以支持任何制造商提供的任何NVMe SSD。

I/O多路径,命名空间和SR-IOV

除了性能之外,NVMe协议还支持IO多路径,这对于冗余和负载平衡目的特别有用。这是高可用性系统的强制功能:如果一条路径不可访问或繁忙,则可通过另一条路径访问数据。命名空间所有者可以拥有独占控件或彼此共享(参见图3)。共享命名空间所有者可以与命令原子性同时操作。NVMe名称空间共享与多路径相结合,为企业级存储系统奠定了基础。

IO虚拟化与命名空间一起使NVMe对企业SAN,超大规模服务器SAN,虚拟化和超融合用例非常有用。更进一步,SR-IOV(单根I/O虚拟化)允许不同的虚拟机(VM)共享单个PCIe硬件接口。使用SR-IOV,虚拟机管理程序无需参与IO活动,仍然可以共享组件,这有助于提高IO性能和整体系统利用率以及基础架构整合。

图3 IO所有权(NUMA)

多流写入

与硬盘驱动器相比,SSD的磨损方式不同。由于NAND闪存的特性,SSD具有有限的寿命,这些写入操作的数量由称为NAND闪存可以承受的编程/擦除(P/E)周期的写入操作决定。

多写入流是另一个有用的功能,它可以帮助SSD在相邻位置放置类似的数据,以最大限度地减少垃圾收集工作。正确实现后,这可以减少写入放大,提高用户写入性能并降低写入延迟。通过减少系统(设备管理)写入次数和增加用户写入次数,它还可以延长设备的使用寿命,参见图4。

图4 多流写入

异步事件捕获

NVMe协议还支持异步事件,例如SMART状态检查,错误报告,固件提交,清理等。这些对于主机在需要时理解,响应和控制设备至关重要。这些事件可能不会立即执行,也不会超时。每当发生这些事件时,主机接收消息并触发动作(例如,如果温度超过预定阈值,则可以开始节流或者可以停止IO操作直到设备冷却或风扇可以以更高的速度运行)。主机还可以发出异步固件下载和提交命令,以便下载,验证并使其在特定的映像插槽中可用。

随着新功能的添加,错误的修复以及安全补丁的发布,固件升级很常见。但在企业数据中心,停机意味着收入损失。因此,这些设备需要支持计划内停机时间,提供多个固件映像,并尽可能减少停机时间。控制器可以使用校验和,加密哈希或数字签名来验证和验证映像,并使其在特定固件插槽中可用。通常可在下一个复位周期后加载图像。

引导分区

NVMe规范还定义了一个启动分区,即使在控制器就绪之前也可以读取。分区空间可以具有系统初始化代码以引导到诸如UEFI的预OS环境。此选项对于安全启动应用程序也很有用。

电力和热管理

与读取操作相比,底层NAND器件在写入操作期间消耗更高的功率。功率越高,散热越高。通过识别IO模式,然后为选定的几个设备提供更高的功率是一个有趣的功能。这为用户提供了在管理电源和温度挑战方面的灵活性,同时提供了企业级性能。例如,应用程序可以为写密集型工作负载设置更高的功耗和热预算,为读取主导的工作负载设置更低的功率和热预算。这有助于管理企业服务器/存储系统的总体热量和功率预算。

总之,NVMe正在成为一种普遍的技术,具有领先的性能,支持高吞吐量和低延迟的应用(如数据库,虚拟化,数据挖掘,实时分析,物联网和其他高性能计算)。此外,独特的NVMe功能为数据中心,云端和Edge中的新应用打开了大门。

一个基于NVMe的高密度转码解决方案

Netint公司近期推出的视频转码Codensity T400模块,提供了一个存储服务器的高密度转码解决方案。其Codensity G4 SoC包括了ASIC方案的视频编解码器,支持H.264 / H.265的的4K@60 fps或8x 1080p@30 fps实时编解码。T400模块设计为U.2 NVMe托架接口模块,通过替换传统存储服务器中的U.2 SSD卡,实现转码容量的增加,而非存储容量的增加。如图5所示,在10个NVMe托架的1U服务器,通过插入10个 T400转码器模块,可支持80路同步1080p @ 30 fps实时转码。

图5 基于NVMe硬件模块的高密度转码方案

在这种解决方案中,T400视频转码的控制是通过NVMe R1.3接口完成。实际应用中可通过安装Xcoder lib与FFmpeg无缝集成,如图6所示。

图6 基于NVMe硬件转码模块的应用层方案

相关链接

ICT技术之喷—基础架构

参考资料

[1]https://blog.westerndigital.com/nvme-important-data-driven-businesses/

[2]https://blog.westerndigital.com/nvme-features-enterprise-edge-storage/

[3]https://www.netint.ca/product/t400_transcoder/

[4]https://www.netint.ca/blog/presentation_at_streaming_media_west_2018/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 媒矿工厂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Samsung:大容量QLC-SSD 的若干问题
固态硬盘(SSD)作为高性能存储的主流选择,其容量也在不断突破极限。为了满足这一需求,存储行业正积极推动更高密度 NAND 闪存技术的应用,其中四层单元(QLC)技术因其更高的存储密度而备受关注。然而,QLC 技术在带来容量飞跃的同时,也带来了性能、耐用性和服务级别协议(SLA)等方面的挑战。理解这些挑战并探索相应的解决方案,对于充分发挥高容量 SSD 的潜力至关重要。本文将深入探讨高容量 QLC SSD 的技术特性、面临的挑战,以及行业为应对这些挑战所做的努力,特别是大块大小(LBS)等创新技术如何影响未来的存储格局。
数据存储前沿技术
2025/05/06
2520
Samsung:大容量QLC-SSD 的若干问题
一文读懂NVMe、NVMe-oF和RDMA
过去,网络只要升级至 10Gb、40Gb 和 100Gb 以太网,就足以满足存储系统的联网需求了。但现如今,随着超快固态硬盘 (SSD) 和高速非易失性内存 (Non-Volatile Memory Express, NVMe) 的问世,网络存储已经发生了翻天覆地的变化。 什么是 NVMe? 传统的存储系统的基础是硬盘驱动器 (HDD) 旋转介质,这项技术历经 60 余年沉淀发展而成。随着设备尺寸越来越小且速度越来越快,驱动器技术不断演进,固态驱动器 (SSD) 的问世给存储世界注入了新的血液。 突然之间
SDNLAB
2022/08/26
8.8K0
一文读懂NVMe、NVMe-oF和RDMA
详解:什么是NVMe?
说到NVMe,“快”是人们对它的第一印象。因为NVMe的出现,硬盘的性能得到了极大的提升。那到底什么是NVMe呢?
SDNLAB
2021/04/16
3.7K0
NVMe SSD 开发工具:NVMeVirt
文档介绍NVMeVirt,一个基于软件的虚拟NVMe设备模拟器,及其在加速存储系统研发中的应用。
数据存储前沿技术
2025/02/11
4780
NVMe SSD 开发工具:NVMeVirt
NVMe接口优化:HDD存储的未来之路
在生成式AI和大数据时代,存储系统的性能和效率变得至关重要。传统的SATA和SAS接口已经无法满足现代数据中心对高吞吐量和低延迟的需求。NVMe(非易失性内存 express)作为一种新兴的存储接口,正在逐步取代这些传统接口,特别是在大容量存储系统中。本文深入探讨了NVMe接口在HDD(硬盘驱动器)中的应用,分析了其如何通过统一存储堆栈、优化拓扑结构以及引入新技术(如eBPF、CMB、HMB等)来提升存储系统的性能、降低功耗和总拥有成本(TCO)。通过多个实际案例和技术细节,本文为读者展示了NVMe接口如何推动存储技术的革新,并为未来的数据中心和AI应用提供了强有力的支持。
数据存储前沿技术
2025/02/26
3142
NVMe接口优化:HDD存储的未来之路
刨根问底:NVMe 从哪里来,到哪里去?
首先,介绍自NVMe 2.0规范发布以来,企业级SSD出货量的增长情况,并预测了未来几年内不同接口类型的硬盘出货量变化。详细列出了消费级和企业级NVMe SSD的出货量数据,突显了NVMe技术在消费者和企业市场的普及与增长。概述NVMe技术标准更新历程,包括新批准的技术提案和已经标准化的规格,展示了NVMe生态系统不断演进的技术栈。还提到了NVMe技术在安全性、可扩展性、服务质量等方面的增强特性,以及对未来技术发展的展望,如支持新兴技术和提高系统可靠性
数据存储前沿技术
2025/02/11
3860
刨根问底:NVMe 从哪里来,到哪里去?
Solidigm:CSAL 云存储加速层实现与优势
按:QLC 高密度SSD 在云存储实践中,除FDP/ZNS等主控上改进措施之外,也需关注缓存层设计,Solidigm 提出 CSAL 缓存加速层来提高其 QLC 产品可用性。
数据存储前沿技术
2025/02/11
2030
Solidigm:CSAL 云存储加速层实现与优势
优秀的 Verilog/FPGA开源项目介绍(三十九)- NVMe
NVM Express ( NVMe ) 或 Non-Volatile Memory Host Controller Interface Specification( NVMHCIS ) 是一种开放式逻辑设备接口规范,用于访问通过PCI Express总线连接的计算机非易失性存储介质。NVM 的缩写代表非易失性存储器,通常是 NAND 闪存,具有多种物理外形,包括固态驱动器(SSD)、PCIe 附加卡和M.2( mSATA的后继者 )。
碎碎思
2023/09/21
4.7K0
优秀的 Verilog/FPGA开源项目介绍(三十九)- NVMe
实时高密度AI辅助视频编码的ASIC解决方案
大家好,我是周炎均,NETINT的技术总监和软件架构师。很高兴有机会能够和大家交流NETINT的实时高密度AI辅助视频编码的ASIC解决方案。首先,请允许我简单介绍一下NETINT Technologies Inc.。NETINT是一家专注于新型智能存储和视频/图像编解码解决方案的科技公司,在温哥华、多伦多和上海都设有研发中心。NETINT自主设计的SoC可提供基于ASIC的超大规模、超高密度、超低延迟的视频解决方案,我们的T系列视频转码器产品已被全球众多顶级大公司所使用。
LiveVideoStack
2021/01/05
1K0
实时高密度AI辅助视频编码的ASIC解决方案
NVMe + CXL 场景案例分析
在之前整理的材料中,介绍了 NVMe 作为专门为SSD优化的存储访问接口(协议),为存储系统的高效访问提供通信基础。 CXL 是一种高速接口协议,旨在连接计算、内存和存储资源,提升数据中心的工作效率。它不仅是一个通信协议,还支持多种设备间的互操作性,允许灵活的资源分配和管理。
数据存储前沿技术
2025/02/11
3100
NVMe + CXL 场景案例分析
SMI:虚拟化环境下NVMe SSD性能优化
文档由Silicon Motion技术公司提供,关于如何在多虚拟环境中优化NVMe SSD I/O性能的技术。
数据存储前沿技术
2025/02/11
2670
SMI:虚拟化环境下NVMe SSD性能优化
KIOXIA:Flash发展历程与E3.S接口趋势
KIOXIA自1987年发明NAND闪存以来,一直是全球领先的供应商,其产品覆盖广泛的应用场景,包括服务器、存储和超大规模数据中心。公司通过不断技术革新,例如3D闪存技术和BiCS FLASH™系列,保持了行业领先地位。特别是在推出E3.S小型形式因素SSD上,KIOXIA展现了其对优化企业级存储解决方案的承诺。
数据存储前沿技术
2025/02/11
2120
KIOXIA:Flash发展历程与E3.S接口趋势
Solidigm:NVMe SSD 在AI存储中的价值
文章探讨人工智能和机器学习(AI/ML)数据管道中的存储解决方案,强调了固态硬盘(SSD)尤其是NVMe SSD在不同阶段的应用价值。
数据存储前沿技术
2025/02/11
4410
Solidigm:NVMe SSD 在AI存储中的价值
NVMe非易失性存储器访问和传输协议;以及PICE总线简单理解
​推荐文章:深入探索MyBatis-Plus:高效实现字段模糊查询的秘诀-腾讯云开发者社区-腾讯云
zhangjiqun
2024/11/17
2750
SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解
固态驱动器(Solid State Drive),俗称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,因为台湾英语里把固体电容称之为Solid而得名。SSD由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。被广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空、导航设备等诸多领域。
全栈程序员站长
2022/08/10
29.4K0
SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解
NVMe Over CXL SSD 概念、场景与价值
早期计算机为优化性能,内存与存储分离:内存高速低延迟服务CPU即时需求,存储大容量持久保存。大数据和AI兴起,传统架构瓶颈显现,数据激增,内存需求空前,PCIe扩展受限。CXL应运而生,统一CPU、内存、加速器、存储,使NVMe SSD与内存紧密协作,SSD DRAM可扩展为HDM,提升速度、降低延迟、实现内存池化和动态分配,提高效率。本文将剖析NVMe over CXL原理、优势及应用,阐述其如何革新计算存储,尤其应对AI高性能大容量需求。
数据存储前沿技术
2025/04/13
3140
NVMe Over CXL SSD 概念、场景与价值
存储解耦,SAN->IP->NVMe 到DPU
在数据爆炸式增长的今天,传统存储架构正面临前所未有的挑战。无论是直接连接存储(DAS)、集中式存储区域网络(SAN),还是基于IP的分布式存储,它们在性能、扩展性或灵活性上,都难以完全满足现代云计算和虚拟化环境对高性能、低时延存储的需求。
数据存储前沿技术
2025/05/18
1600
存储解耦,SAN->IP->NVMe 到DPU
收藏:NVMe协议基础原理介绍
概述:NVM Express(NVMe),或称非易失性内存主机控制器接口规范(英语:Non Volatile Memory Host Controller Interface Specification,缩写:NVMHCIS),是一个逻辑设备接口规范。它是与AHCI类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过PCI Express(PCIe)总线附加的非易失性存储器介质(例如采用闪存的固态硬盘驱动器),虽然理论上不一定要求 PCIe 总线协议。
SDNLAB
2022/12/14
7.4K0
收藏:NVMe协议基础原理介绍
Bill Gervasi:NVMe-Over-CXL 怎么落地?
按:本文是Bill老先生关于CXL场景和落地,在FMS-24上的发言材料,文中绝大部分直译作者观点,鹏弟延申的思考均以Note标出,建议阅读文末Bill 另两篇关于DRAM的介绍,循序渐进再来读,会更有感觉。
数据存储前沿技术
2025/02/11
2450
Bill Gervasi:NVMe-Over-CXL 怎么落地?
NVMe-oF 扩展HDD硬盘的可行性
按:本文可在 Viking Enterprise:企业存储的分层视角基础上进一步阅读,加深对数据中心存储分层的理解,本文重点分析HDD上实现NVMe改造的可行路径。
数据存储前沿技术
2025/02/11
1890
NVMe-oF 扩展HDD硬盘的可行性
相关推荐
Samsung:大容量QLC-SSD 的若干问题
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档