都说NVMe SSD优于SATA SSD,那为什么会是这样,软硬件分别体现在哪里?
我们先来澄清一些概念,NVME是接口规范,适配PCIe总线,SATA也是总线,适配的是AHCI接口规范
- 低延时
①NVMe SSD是通过PCIe直接连到CPU内部;PCIe总线具有很高的传输速率(gen4 16GT/s gen5 32GT/s),高并发(x4或x8 Lane并发),低冗余(128/130编码)、协议优化交互设计等;
SATA SSD的指令需要从CPU和内核走到南桥,再通过SATA总线走到SSD,SATA总线具有较低的传输速率(sata3.0 6Gb/s),低并发(没有Lane并发),高冗余(8/10编码),再加上SATA协议层冗长
②nvme精简调用方式,执行命令时不需要读取寄存器;AHCI每条命令要读取4次寄存器,一共会消耗8000次CPU循环,从而造成2.5微秒的延迟
③SATA通过锁在进程之间共享资源,nvme减少了各个CPU核之间的锁同步操作
④SATA SSD支持1个MSI-X中断向量;NVMe SSD支持2k个中断向量 - 高性能
图1为PCIe通信方式,有专门的发送和接收通道,数据可以同时往两个方向传输,这种工作模式成为双单工模式,也可以理解为全双工模式
图2为SATA通信方式,也有独立的发送和接收通道,单同一时间只能一条通道进行数据传输,这种工作模式时半双工模式。
此外,nvme支持64k个IO队列,每个队列深度可达65535;AHCI只支持1个命令队列,队列深度固定为32个 - 低功耗
在功耗管理上NVMe标准的SSD会比SATA SSD拥有较大的优势,NVMe加入了自动功耗状态切换和动态能耗管理功能,SSD在闲置的时候可以快速的控制在极低的水平,从而降低整体的能耗。这一点对移动设备来说尤其重要,可以显著增加笔记本和平板电脑的续航能力。 - 外部环境
①3D nand的普及让SATA SSD失去了价格优势。比较英特尔的P3520和S3610系列,如果但看整体价格,肯定是S3610的SATA便宜一些,但是加权寿命后每GB的价格降低了很多,由2D时代的十倍降低到了3D时代的3倍,考虑到NVMe的带宽和IOPS优势,几乎可以相互抵消了
②丰富的NVMe接口多方位挤压SATA市场
NVMe由最开始的AIC接口,还有U.2 M.2 和BGA等多种形式,其中U.2和M.2兼容了SATA接口,获得了NVMe服务器厂商的支持。U.2是未来主流发展方式,具有便携管理(热拔插)和高性能;M.2主要应用于消费级市场,其功耗和SATA接近。
③完善的厂商支持推进生态成熟
图片上是部分国内厂商,无论是底层SSD,中间的服务器平台,还是上层的存储软件都能参与进来,完善的厂商支持将会进一步推进生态成熟。
参考:
https://blog.csdn.net/Z_Stand/article/details/111415236
公众号:存储技术最前线 《企业级SSD市场接口之争:SATA会被NVMe取代吗?》