浪潮信息企业级SSD:降本又增效?AIPR技术解决高并发读取性能大问题

NAND闪存作为一种非易失性存储介质,凭借其功耗低、重量轻、性能佳和断电后仍然能保存数据等特点,成为比硬盘驱动器更好的存储设备,非常适合作为便携设备的存储器来使用。

固态硬盘(Solid State Disk,简称SSD)是以NAND闪存介质为主的一种存储产品。近年来,由于SSD的低功耗、高性能、稳定安全等优点,使其越来越受到客户的青睐,SSD也逐渐大量应用于IT运维、金融等行业。

性能vs成本,SSD如何兼得?

一个NAND闪存芯片封装了若干个DIE(或者叫LUN),由于NAND闪存介质技术的发展,其层数不断增加,单个DIE的容量也不断增大,对于相同容量的SSD而言,所需DIE的个数会随之减少。带来的好处是,SSD单位容量的成本和价格不断降低,利好用户的同时也有利于扩大SSD的使用范围。但与此同时,DIE个数的减少又会导致NAND读取的并发度减少,读性能也会因此而降低。面对用户日益提高的性能需求,这一缺点又会限制SSD使用范围的扩大。

通俗来讲,SSD可以理解为一个需要接纳一定数量居民的社区,NAND闪存芯片相当于其中一个小区,DIE相当于这个小区里的楼栋,Plane(平面)可以理解成这栋楼每个楼层的门户,每个Plane又分成很多Block(块),Block则相当于每一户里的房间数,Page(页)相当于一个房间里(Block)的人数,而并发度可以理解为楼栋里的电梯,受Bus总线的限制,电梯一次只能载一个人。因为建造技术的发展,每栋楼(DIE)可以由原来的8层楼建造成16层楼,即每栋楼较之前可以多接纳一倍的居民,在接纳居民数量一定的情况下(相同容量的SSD),楼栋(DIE)的数量则可以减少一半,土地和建造成本则有所减少,房价也会相对比较便宜些,因此会受到购房者的欢迎。但由于每栋楼(DIE)只有一个电梯(并发度),电梯数也随着楼栋的数量减少而减少一半,对于居民来说,出行效率则大大降低,因此又会抑制购房者的购买意愿。

为了降低这种问题带来的影响,SSD厂商提出如通过提高电梯的运行频率来加快电梯的传输速率,或由楼管通知同一楼层的人同时准备好出门去电梯口排队乘用电梯等解决办法。

当前SSD基本采用Multi-plane(多面)的设计(主流使用4-plane设计,相当于一个楼层有4户,4户共用一个电梯,即“一梯四户”)。随着技术发展,读方式由开始的Single-plane read(Single-plane读)发展为Multi-plane read(Multi-plane读),即从一开始的一次只能通知一户中的房间里的1个人准备出门再去乘电梯,发展成同一楼层四户房间里的4个人同时准备出门去排队乘用电梯。

此技术对顺序读性能有很大提升,但对随机读性能的提升却乏善可陈,因为顺序读时,好比是楼管按顺序坐电梯去每个楼层通知居民准备出门,每次同一楼层的人都可以同时准备出门,大大缩短了准备出门的时间;但当随机读时,相当于楼管要先后去不同楼层去通知指定门户房间的人出门,只能让先准备好的人先乘用,等前面的一个人乘用完,才能让另外楼层的人乘用,这和Single-plane读区别不大。

为了在高顺序读性能的前提下提升随机读性能,异步独立平面读取(Asynchronous Independent Plane Read,简称AIPR)功能应运而生。

AIPR功能旨在提高随机读取IOPS,随机读时,通过AIPR功能可以增高并发度,提高数据传输总线的利用率,从而来提高随机读性能。即在楼栋内增加电梯数,在每一列户门口都装一个专属电梯,虽然受Bus总线的限制,楼栋内同一个时间只能用一个电梯,但楼管能在通知完一个楼层的人准备出行后,马上坐电梯去通知另一楼层的其他列住户准备出门,每一列户出门准备时间并行,一旦准备好,即可乘用门口的电梯,提高了电梯传输的利用率,从而提高出行效率。

下文通过介绍上述三种读方式的演进和对比,来介绍AIPR的优势:
1、Single-plane read

Single-plane read,即一次只读取一个plane中的位置,示意图见下图1中Single-plane read。以4-plane TLC block为例(下文同),因DIE为并发度单位,由于tR(读操作时间)的存在,此时读完4个plane需要经过4个tR时间,所有读操作和数据传输串行,读时延较长且性能较低。为放松此限制,引入了Multi-plane read。

2、Multi-plane read

Multi-plane read,即可以同时读取多个plane中的位置,如下图2中Multi-plane read。对Multi-plane read来说,所有plane的读取操作同时开始,而且每个plane中读取的位置要求相同。虽然仍是以DIE为并发度单位,但此方式较于Single-plane read,读操作时间并行,大大缩短了读时延、提高了顺序读性能。

这种方法对于提升顺序读速度很有效,但对于随机读而言,Multi-plane read相对Single-plane read而言几乎一致。现在为进一步提高随机读性能,提出将并发度单位由DIE改成plane,便引入了AIPR功能。

3、AIPR

AIPR功能开启后,不同plane的读取操作的时序和位置完全独立,即不同plane可进行异步且独立的操作(如图1或图2中的AIPR)。通过AIPR,每个plane的读取操作可以独立启动。Data out command(数据输出命令)也可以在每个plane的读取操作结束后独立启动

当进行随机读时,AIPR的并发度是Single-plane read的4倍(以4-plane为例),并且进行数据传输时,AIPR方式的数据传输总线利用率更高,对小容量盘的随机读性能提升更明显,如图1,可发现AIPR功能有明显的性能优势。

图1:随机读Single-plane read与AIPR对比图 

当进行顺序读时,与Multi-plane read进行对比,AIPR方式的数据传输总线利用率也会更高,也具有一定的性能优势,如图2。

 

图2:顺序读Multi-plane read与AIPR对比图

随着3D NAND闪存快速发展,NAND介质的层数和密度越来越高,单个DIE的容量也随之增高,在盘总容量固定的情况下,DIE的个数则会减少。若仍按照Single-plane read和Multi-plane read的方式读写,则盘的总的并发度也会相应降低,导致性能有所降低。相比Single-plane read和Multi-plane read,AIPR通过提高并发度来增高数据传输总线的利用率进而提高随机读性能,与小容量盘的随机读性能提升显著。

基于存储即平台战略的新一代SSD高速存储介质

采用AIPR技术的浪潮信息NS8500G2/NS8600G2是定位于高性能的企业级固态硬盘,采用PCIe Gen4.0 x4企业级主控和112L 3D TLC NAND方案,符合NVMe1.4协议,各容量点均具有高读性能:顺序读性能达到7000 MB/s以上;4K随机读IOPS能达到1600K以上,提升至Single-plane read/Multi-plane read方式的3.6倍。新一代SSD高速存储介质具有单端口和双端口两种形态,支持全路径端到端保护和国内外加密算法,使数据更持久可靠,通过多档精细功耗调节实现能耗比提升37%。在云存储、数据库、人工智能、大数据、物联网等领域广泛应用,为金融、通信、互联网等行业超过700家客户保障数据安全,实现数据永不丢失。

 近年来,浪潮信息存储持续加大技术研发与产品创新的投入,不断汲取各生态产业的前沿技术,以精益精造的理念,不懈追求为客户提供更加极致的性能体验,充分发挥NAND闪存高效、可靠、绿色的优势,以创新助推技术产品化,全面释放数据价值,加速各行业数字化转型。

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

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

相关文章

KUST_LI计算机视觉实验室服务器安装与管理

第一步:安装 Linux-Ubuntu系统 系统语言设置为英文 ENGLISH,防止系统 BUG;选择-清除整个磁盘并安装系统(不要清除机械硬盘内容);设置用户名和密码,实验室统一时区设置为:中国上海其…

java八股文面试[java基础]——Object类有哪些方法

通过IDEA打开Object类就可以看到 (1)clone方法 保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。 主要是JAVA里除了8种基本类型传参数是值传递&#xf…

C语言:指针(超深度讲解)

目录 指针: 学习目标: 指针可以理解为: 字符指针: 定义:字符指针 char*。 字符指针的使用: 练习: 指针数组: 概念:指针数组是一个存放指针的数组。 实现模拟二维…

【LeetCode】2236.判断根节点是否等于子节点之和

题目 给你一个 二叉树 的根结点 root,该二叉树由恰好 3 个结点组成:根结点、左子结点和右子结点。 如果根结点值等于两个子结点值之和,返回 true ,否则返回 false 。 示例 1: 输入:root [10,4,6] 输出&…

【MySQL系列】Select语句单表查询详解(一)

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …

Kafka基本使用

查看Kafka的进程是否在运行 #命令行终端中运行如下命令 ps -ef | grep kafkafind / -iname kafka-server-start.shcd /usr/local/kafka/bin/#启动kafka ./kafka-server-start.sh -daemon /usr/local/kafka/config/server.propertiesKafka默认使用9092端口提供服务&#xf…

IDEA启动Tomcat两个端口的方式 使用nginx进行反向代理 JMeter测试分布式情况下synchronized锁失效

目录 引出IDEA启动Tomcat两个端口的方式1.编辑配置2.添加新的端口-Dserver.port80833.service里面管理4.启动后进行测试 使用nginx进行反向代理反向代理多个端口运行日志查看启动关闭重启 分布式情况下synchronized失效synchronized锁代码启动tomcat两个端口nginx反向代理JMete…

“产业应用创新奖2023”启动征集

当前,人工智能已经成为新一轮科技革命和产业变革的重要驱动力量,基于强算法、大算力和大数据的大模型成为主流方向。文心大模型和飞桨一直致力于发挥算法模型技术优势,助力AI 大生产加速升级。 文心飞桨赋能千行百业 产业创新不断涌现 数字医…

验证评估守护关基安全 赛宁数字孪生靶场创新实践

​​近日,由赛宁网安主办,ISC互联网安全大会组委会协办的第十一届互联网安全大会(ISC 2023)安全运营实践论坛圆满结束。赛宁网安产品总监史崯出席并作出主题演讲:《基于数字孪生靶场如何开展验证评估》,同时…

计算机网络 QA

DNS 的解析过程 浏览器缓存。当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名对应的 IP 地址(曾经访问过该域名并且没有清空缓存)系统缓存。当浏览器缓存中无域名对应的 IP 地址时,会自动检测用户计算机…

wazuh环境配置及漏洞复现

目录 wazuh环境配置 案例复现 wazuh环境配置 1.进入官网下载OVA启动软件 Virtual Machine (OVA) - Installation alternatives (wazuh.com) 2.进入VMware像配置其他虚拟机一样进行配置即可 3.上面会有提示:账号为,wazuh-user;密码&#xf…

高性能网络模式-Reactor

事实上,Reactor 模式也叫Dispatcher模式,即I/O 多路复⽤监听事件,收到事件后,根据事件类型分配(Dispatch)给某个进程/线程。Reactor 模式也是一种非阻塞同步网络模式。 Reactor 模式主要由 Reactor部分和处…

(6)(6.6) 恢复任务回放

文章目录 前言 6.6.1 配置 6.6.2 工作原理 6.6.3 局限性 前言 本页介绍了什么是"任务继续时后退"功能以及如何使用该功能。 !Note 从 4.1 版起,Plane、Copter 和 Rover 均可使用此功能。 在某些应用或运行区域,为了消除冲突…

【应用层】网络基础 -- HTTP协议

再谈协议HTTP协议认识URLurlencode和urldecodeHTTP协议格式HTTP的方法HTTP的状态码HTTP常见HeaderHTTP周边会话保持 再谈协议 协议是一种 “约定”. socket api的接口,在读写数据时,都是按 “字符串” 的方式来发送接收的(tcp是以字节流的方式发送的&am…

通过仿真理解RLC串联电路和RLC并联电路的阻抗、导纳、品质因数等概念

一.RLC串联电路 1.阻抗 CSDN编辑公式太难受了。。。直接上PPT~ 2.RLC串联电路阻抗的仿真分析 仿真与理论计算,还是有些误差存在的。 二.RLC并联电路 1.导纳 2.RLC并联电路阻抗的仿真分析 3.RLC并联电路的“虚断”特性 三、LC电路的作用 四、品质因子Q 1.RLC串…

YOLOv5基础知识入门(7)— NMS(非极大值抑制)原理解析

前言:Hello大家好,我是小哥谈。NMS是指非极大值抑制(non maximum suppression),它是一种常用于物体检测任务的算法。在物体检测中,通常会有多个预测框(bounding box)被提议出来&…

Gitlab服务部署及应用

目录 Gitlab简介 Gitlab工作原理 Gitlab服务构成 Gitlab环境部署 安装依赖包 启动postfix,并设置开机自启 设置防火墙 下载安装gitlab rpm包 修改配置文件/etc/gitlab/gitlab.rb,生产环境下可以根据需求修改 重新加载配置文件 浏览器登录Gitlab输…

【C语言】扫雷游戏(可展开)——超细教学

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:C语言 🔥该篇将运用数组来实现 扫雷游戏。 目录: 🌟思路框架测试游戏 🌟测试部分函数实现&am…

23种设计模式攻关

👍一、创建者模式 🔖1.1、单例模式 单例模式(Singleton Pattern),用于确保一个类只有一个实例,并提供全局访问点。 在某些情况下,我们需要确保一个类只能有一个实例,比如数据库连接…

Qt+Pyhton实现麒麟V10系统下word文档读写功能

目录 前言1.C调用python1.1 安装Python开发环境1.2 修改Qt工程配置1.3 初始化Python环境1.4 C 调用Python 函数1.5 常用的Python接口 2.python虚拟环境2.1Python虚拟环境简介2.2 virtualenv 安装及使用2.3 在C程序中配置virtualenv 虚拟环境 3.python-docx库的应用4.总结 前言 …