大部分的疑问在四年半前的创见MTE-110S开箱时就有解答
[开箱] 创见PCIe SSD 110S 512GB评测feat.HMB
https://www.ptt.cc/bbs/PC_Shopping/M.1537424060.A.E8F.html
这条从我的笔电转到桌机用还在奋斗中,可能会写一篇SSD长期使用经验?
有兴趣请按1、没兴趣请按0 (欸)
1.HMB到底是怎么做到的,有什么用处?
https://i.imgur.com/UPAjSTh.png
(来源https://tinyurl.com/yavh86pa)
a.HMB能够从主机端的内存划分SSD主控专用的区域,这个是作业系统的事
b.规划出来的HMB区就让主控当成传统SSD中的快取DRAM来用
而”理论上”加了HMB的随机性能能够直逼自带DRAM的SSD主控方案
(尽管需要走远路来存取DRAM)
毕竟能存放更多的映射表(FTL)资讯,命中率就大幅提升了
HMB当然也不只能当储存映射表的空间,也能当写入快取
不过最显著的提升自然是拿来当储存映射表的空间
HMB可让NVMe SSD主控划分出的内存量不定,必须由SSD韧体设计最佳大小
但能肯定的是一定比主控内建的SRAM还要高出数倍,显著改善随机读写的性能
当前市面上的SSD比较常见的切法就64MB而已,不用怕会切到超过1GB这么夸张的事
是有魔改方式可以增大但效果有限,还是照原厂设定的量走即可
HMB也并非简单的解决方案,主控和作业系统也得有支援和完善各种安全机制
否则HMB内的资料出错将对用户数据造成极大的灾难
例如强化意外断电的处理和保证HMB对应到SSD的资料都正确无误
微软是在W10 1703中增加了对HMB的支援
主控厂商则是强化了端对端数据路径保护(简称E2EDPP)
对HMB大小和功用研究有兴趣的话可以参考Kim等人(2020)这篇
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7051071/
2.NVMe SSD在DRAMless设计下+HMB的差异,真的强到和设计上有DRAM没差吗?
性能的话DRAMless+HMB当然是有改善,不过还是有一定的限制
看看这4K随机读的性能提升
https://i.imgur.com/780ACWF.png
MTE-110S 512GB开启后的性能QD趋势
https://i.imgur.com/DcmpF37.png
限制主要是混合读写比例的表现依旧疲软或pettan(平)
这在不同厂商的SSD也能观察到
混合读写的话开启、关闭HMB都没有显著差异
http://images.anandtech.com/doci/16504/rm-980-1000-nohmb.png
三爽980和希捷FireCuda 510(群联E12+BiCS 64L TLC)对比
http://images.anandtech.com/doci/16504/rm-fc510-1000.png
来源 https://www.anandtech.com/show/16504
至于DRAMless会不会比较容易坏,或是有DRAM比较容易坏就没依据惹
你硬要说少一个东西就少一个鬼倒也是一种可能性,毕竟设计更简化
但DRAM本身不太容易自然毁损,看看你电脑上的内存有那么容易坏吗?
更何况SSD的规格都是订死的,用户没办法超频玩坏
真的要坏反而是外界因素比较有可能
看小飞机DIY资料救援案例,单换DRAM不是很常见
DRAM要出问题要不就短路烧坏一堆东西,或进水debuff加上元件的焊点都被腐蚀掉
此时主控没绑定就索性搬板,去赌能否轻松秒杀
3.怎么知道SSD有支援HMB并且开启?
vlo.name的ssd utils(下载flashid的网站)有“NVME HMB info”可以用
这个不限制NVMe SSD品牌,只要是Windows就能看
最近在debug为什么电脑睡眠后SSD的HMB就会被关掉,有够麻烦
才发现Windows装置管理员SSD里面的写入快取可以控制HMB的开/关
开启写入快取,重开机后HMB就会启动
但是按睡眠,醒过来后SSD的写入快取选项就会被关掉
真的吐血,不知道是啥造成的
4.那有没有SSD有DRAM但又开HMB?
这就很有趣,因为有的主控制器设计上是DRAMless和DRAM共用
只是功能有没有打开支援DRAM而已,不过没有人直接做横向测试
例如SM2263EN和XT两者就共用设计
甚至中国有土炮SSD社群表示部分XT开卡时可以当成EN用
https://cdn.mos.cms.futurecdn.net/zPDnePpdSviVKwWtYLRXZa.jpg
(来源tomshardware.com)
也有DRAM设计但是使用HMB节省DRAM的大小,进而节省DRAM的成本
螃蟹RTS5762仅需1/4的快取DRAM,即用了HMB的设计
https://www.xfastest.com/thread-229338-1-1.html
在Intel 660P的设计下SM2263EN也是使用HMB让快取DRAM仅需1/4的大小
https://www.tomshardware.com/reviews/intel-ssd-660p-qlc-nvme,5719.html
5.外接装置有支援HMB吗?
母灾
没外接盒可以测,应该不支援