请选择 进入手机版 | 继续访问电脑版
楼主: eikku81021
515 1

开课吧高薪webGL工程师[2022最新网盘分享 [推广有奖]

  • 0关注
  • 0粉丝

高中生

75%

还不是VIP/贵宾

-

威望
0
论坛币
3 个
通用积分
29.8159
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
230 点
帖子
10
精华
0
在线时间
35 小时
注册时间
2020-4-3
最后登录
2023-6-22

eikku81021 发表于 2022-12-2 20:35:17 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
开课吧高薪webGL工程师[2022最新网盘分享
download:链接:https://pan.baidu.com/s/1qv429XAPqd87jO5i_Cj0XA?pwd=6e2t
提取码:6e2t
--来自百度网盘超级会员V5的分享
荣泉闪存系列科普SSD为什么需要NVMe?
目前大部分机械硬盘使用的是SATA(串行ATA高级主机控制器接口)接口,接口协议是AHCI,是Intel和几家公司共同开发的系统接口标准。AHCI的最大队列深度为32,即主机最多可以发送32条命令到HDD或SSD执行。在HDD时代,整个性能瓶颈是硬盘端,而不是接口和协议端,所以AHCI可以很好地匹配HDD。但是随着SSD硬盘技术的不断演进,底层闪存的带宽越来越高,介质访问延迟越来越低,系统的瓶颈已经从底层转移到了顶层的接口和协议。这时候你会发现SATA接口的SSD性能不会超过600 MB/s,你会觉得底层闪存的带宽不够,其实是SATA接口的速度限制了带宽。SATA 3.0的最大带宽为600MB/s..此时,AHCI和SATA已经不能满足高性能和低延迟固态硬盘的要求。要想充分释放固态硬盘的性能,就必须设计新的协议和接口。

在此背景下,2009年下半年,英特尔、Magnum、三星等厂商制定了专门服务于SSD的NVMe协议,以取代AHCI,NVMe应运而生。

NVMe(Non-Volatile Memory Express),即非易失性存储器标准,是PCIe接口之上的协议标准,属于协议栈中的较高层。如下图所示:

NVMe是针对PCIe SSD的特点设计的。与传统的AHCI标准相比,NVMe标准可以带来许多性能上的改进。可以说,NVMe是为SSD而生的。

我们刚才提到了AHCI、萨塔、NVMe和PCIe。接下来,我们将通过层次图了解他们的关系和职责。

NVMe的特色和优势

如前所述,NVMe是主机和SSD之间的通信协议,在整个协议栈中处于应用层的位置。NVMe相当于指挥官向下级,也就是PCIe,发出命令去执行。它发出的任何命令都由PCIe完成。虽然AHCI也可以和PCI合伙,但是AHCI只有一个命令队列,最多只能同时发送32条命令,根本控制不了PCIe。NVMe是为PCIe SSD开发的windows sockets标准,定义了系统接口和命令集,目的是让性能更好,延迟更低,功耗更低,所以NVMe和PCIe的匹配无疑是目前最完美的。下面我们通过下图(注:图片来自Intel FMS 2012)比较一下AHCI和NVMe的特点。

与AHCI相比,NVMe有以下优势:

1.低延迟

SSD到CPU的路径更近:从SATA SSD到PCIe SSD,原生PCIe主控直接连接CPU,而不是像SATA那样连接南桥中转,所以PCIe的SSD延迟更低。如下图所示,PCIeSSD作为PCIeEndpoint(EP),通过PCIe连接到RootComplex(RC),RC连接到CPU和内存。

命令更简洁:与ATA规范定义的命令相比,NVMe的命令数量要少得多,完全是为SSD量身定制的。NVMe缩短了从CPU到SSD的指令路径。例如,NVMe减少了对寄存器的访问次数;使用MSI-X中断管理;并行和多线程优化——NVMe减少了CPU内核间的锁同步,等等。
众所周知,底层存储介质SSD比传统的机械硬盘要快很多;
因此,基于PCIe+NVMe的SSD具有非常低的延迟。

2.高带宽、高IOPS性能

理论上,IOPS与队列深度和IO延迟有关。数学表达式是:

IOPS=队列深度/IO延迟

从上面的表达式可以看出,IOPS与队列深度有很大的关系。注意:实际中,随着队列深度的增加,IO延迟也会相应增加。

通常情况下,SATA接口的SSD的队列深度可以达到32,但这是AHCI所能做到的极限。但目前企业级PCIeSSD的队列深度要达到128甚至256才能达到最高的IOPS性能。在NVMe标准下,最大队列深度可以达到64K,队列数量从AHCI的1个增加到了64K。此外,PCIe接口本身在性能上碾压SATA,这使得NVMe SSD在性能上碾压SATA SSD也就顺理成章了。

NVMeSSD和SATA SSD的性能对比图

3.低功耗

NVMe增加了用电状态自动切换和动态能耗管理功能。NVMe规范支持1-32种电源状态(PS)。当主机开启自动电源状态转换功能时,您可以根据自己的喜好设置空闲时间自动转换其他电源状态。

写到最后

那么,严蓉追光F8000X全闪存文件存储对NVMe性能做了哪些优化?

存储处理器资源不仅负责RDMA网络数据包收发处理逻辑,还负责向磁盘转发IO,并负责磁盘读写开销。对于传统的机械硬盘来说,大量的线程可以用来挤压磁盘性能,但是这种方法对于NVMe SSD来说是不现实的。因此,严蓉追光F8000X全闪存文件存储采用异步无阻塞IO模式,有效减少上下文切换,实现全路径零拷贝,支持批量提交和恢复,增加并行能力:

减少用户到内核的复制:通常POSIX I/O,比如read()和write(),每次从用户到内核复制一次用户数据。采用异步非阻塞DMA操作,既避免了复制,又减轻了CPU负荷。
减少上下文切换:OS发出系统调用请求后,会处理其他任务,等待中断通知,然后跟随上下文处理后续任务。对于慢速介质来说是可以的,但是对于NVMe SSD这样的高速介质来说,实际上请求发送后很快就结束了,通过中断切换上下文代价太大。所以不如直接通过轮询,相当于用CPU资源换取低延迟。每个磁盘都会启动一个线程一直轮询,当有任务到来时,会立即感知事件进行处理,提高了IOPS,减少了延迟。
增加并行性:采用异步多队列线程池模型,减少锁冲突,充分发挥IO并行性。
艳追光F8000X全闪存文件存储采用全NVMeSSD,通过深度I/O模型的优化设计,可以充分利用NVMe的多队列特性,获得更高的IOPS性能。同时高效分配处理器内核资源,支持网络级的高并发数据收发处理,同时避免大量线程的调度开销,充分发挥NVMe SSD磁盘的性能。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:WEB 工程师 2009年下半年 download Volatile

三江鸿 发表于 2022-12-3 16:41:07 来自手机 |显示全部楼层 |坛友微信交流群
点个赞感谢分享

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加JingGuanBbs
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 07:02