海康威视HIKVISION C2000 2TB M.2 SSD上手性能验证

2019-06-19 17:56发布

本文由什么值得买用户原创:gaojie20

前言

▲写SSD科学研究系列篇6和篇7的时候,就有人要求我评测海康威视C2000和WD SN750系列,这次正好自己的服务器买缓存盘,看上C2000 2TB便宜大碗,便下手试试,顺手做了下性能验证,给消费者一个明明白白的参考。

开箱

▲包装正面

▲包装背面,标明10年质保

▲包装侧面

▲开盒,包含SSD本体一只,散热片一只,螺丝刀一只。

▲SSD本体正面

▲SSD本体背面,贴标标明2TB容量

▲裸片

▲群联PS5012-E12主控一颗

▲参数来看的话,该主控协议为NVMe 1.3版本,PCIE3.0X4接口界面,8通道,每通道支持4CE,共支持32CE的NAND,缓存的话支持DDR4和DDR3L,使用TSMC 28nm工艺制造,数据最大支持3.2GB/s持续读和3GB/s持续写,4K随机读写最大均为600K IOPS。

▲群联自封的TPBHF55AIV闪存四颗,群联的介绍为TOSHIBA 64层堆栈3D TLC闪存,因为自封的关系,编号也无从溯源。单颗512GB是一定的,四颗组成2TB容量,未知的是到底这颗NAND多少CE多少Die。

▲SKhynix H5AN8G8NAFR-UH缓存两颗

▲溯源海力士的DATASHEET,该缓存为DDR4-2400 8Gb(1GB) 时序1.2V 17-17-17,两颗的话就是2GB缓存。缓存配置上确实可谓豪华。

测试平台

CPU:Intel Xeon-W 2175

主板:Supermicro X11SRA-F

内存:Micron DDR4-2400 ECC-UDIMM 16GB x4

散热:Thermalright AXP-100 Cooper

网卡:Intel X540-T2 10G

电源:SilverStone SX5000-G

机箱:SilverStone GD-9B

▲我自己的HP MircoServer GEN8卖掉之后购入了这套服务器平台作为家庭中心,数据分层三层,

第一层安全数据层为Intel DC P3600 U2 1.6TB、Intel 750 U2 1.2TB、Unigen U2 1.2TB以及Kimtigo AIC 1TB四块企业级MLC SSD组成,高速且稳定。

第二层为高速缓存层,使用两颗HIKVISION C2000 2TB M2 SSD组成,3D TLC闪存。

第三层为低速层,使用四颗SATA SSD完成,支持热拔插。主要用来验证各种系统的代码应用,热拔插方便替换测试环境。

共20TB SSD存储,无HDD,使用万兆网卡作为家庭网络中心的标配。

天堂与地狱

1、AS SSD Benchmark 2.0

▲AS SSD Benchmark 2.0的空盘1GB数据块和98%满盘10GB数据块的测试对比,有一定衰减,但是并不大,在可接受范围。

2、CrystalDiskMark 6.02

▲CrystalDiskMark 6.0.2 的空盘1GB数据块和98%满盘32GB数据块的测试对比,可以很直观反应Windows环境下磁盘最好的表现和最差的表现。差距相对来说变化不大,这只能说是SLC Cache设计的比较大且比较科学造成的结果,普通玩家大部分基本就看看这些。

有个大家都容易碰到的结果是往往空盘去测试的结果有可能还不如接近满盘下的结果,普通玩家会很迷惑,其实这不是您测试的问题,而是盘本身的性能浮动较大,取决于SLC Cache和GC的机制,你测试的那会正好RP大爆发了,可能满盘下也会给你个高分,但是即使你空盘下,赶上主控忙碌状态对盘的性能没有协调到最佳状态时候,可能就给个低分,再次测试可能又高了,这是大部分3D TLC的消费级SSD的共性。

TRIM测试

向SSD里写入一个16M的文件,这文件头的前16位字节如上图白色区域所表示,这也是该文件唯一的文本字符串,然后将其删除,如果TRIM工作,控制器也将删除这个数据,这时候软件让你等待大约20秒后然后按ENTER继续,然后关闭软件再次打开。

再次打开软件,提示原白色区域的字节已经被0所填充,说明主控固件的TRIM机制有效。

URWTEST

▲URWTEST使用随机模式QD1深度随机往SSD里面以2GB数据块大小为单位写入并且反馈即时的写入速度,写满了盘之后可以进行一次数据校验,校验的过程就是随机读取的过程,而校验的结果就是数据完整性的检测。这个测试更接近我们日常的应用等级。当全盘写入完毕会计算出一个平均写入速度:936.36MB/s,写完后校验读取一次全盘,计算出一个平均的读取速度:1202.07MB/s,看出区别了吧,所以爆发速度和平均速度以及最低速度有着本质的区别,但是去看一个盘光看这三者还是不够的,爆发速度和最低速度差距巨大才会产生较低的平均速度,从而诞生了一个核心问题,你会质疑稳定性,如果不是稳定性差,怎么会有如此庞大的性能落差?所以为了验证稳定性,我们就需要看下面的SNIA的PTS测试。

SNIA稳定态测试

消费级SSD大部分都在NTFS格式下的Windows桌面环境中用那些耳熟能详的流行软件进行测试,因为消费级的大部分应用场景确实就那些;而真正适合企业级SSD的测试项目绝对是SNIA组织发布的PTS1.1规范,PTS1.1规范了如何测试企业级闪存设备或固态存储,这也是因为业界希望有一种来比较SSD的科学方法,这也是需要SNIA测试规范的原因。

这个测试,如果性能浮动太大的话,可能永远无法达到稳定态直到测试中断,或者如果Earse机制偶发性失效出现问题,这个测试也会中断,所以不是什么盘都能得到最终的测试结果。

SSD的写入性能在很大程度上取决于NAND的写入历史。SSD一般有三个写阶段:

1、FOB(全新从盒子里拿出来的状态)

2、Transition(过渡)

3、Steady State(稳定状态)

▲以上图例来自SINA PTS 1.1测试规范

Transition(过渡)过渡是FOB和稳态的良好表现之间的阶段。大多数情况下,性能会随着时间的推移而持续下降,直到达到稳定状态为止。SNIA PTS1.1的测试规范则很严格的监控了FOB到稳定态的每一个阶段,以及评估标准帮你去确认你的企业级SSD确实达到了稳定态,所以根据以上溯源我们有了如下的操作:

软件系统及设置

操作系统 : Ubuntu 19.04 Disco Dingo (development branch)

内核版本 : 5.0.0-11-generic

测试软件 : fio-3.14

Number of jobs : 4

Number of outstanding IOs (iodepth) : 32

▲这个测试使用了4线程进行测试。双核加超线程环境我相信是目前最广普的环境了,比较具有代表性。

SSD的序列号以及固件版本是必须要提供的,说明测试的针对性和客观性。

• Model Number: HS-SSD-C2000/2048GB

• Serial Number: 30005151814

• Firmware Revision: ECFM12.1

温度机制

为了得到这个盘的写入温控降速机制,我使用128K QD32持续写入这个盘,同时监控温度来研究机制。

▲这个盘70度是个写入降速阀,达到70度,写入立即降速

▲但是哪怕温度低于70度,写入速度也不会恢复。

▲必须要到60度,写入速度才立刻上升恢复,所以这个盘加强散热是提高性能的关键。

1、IOPS测试

测试方法

进行Secure Erase安全擦除

预处理:128K持续写入双倍SSD容量

每一轮测试包含.512B,4K,8K,16K,32K,64K,128K,以及1MB数据块大小,每个数据块在100%,95%,65%,50%,35%,5%和0%运行读/写混合测试,各为一分钟。试验由25回合(Round)组成(一个循环需要56分钟,25回合=1400分钟)

使用4K随机写入的IOPS作为测试目标,写入振幅20%平均值与测量值线性最佳拟合线的斜率作为验证进入稳定态的标准

▲IOPS稳定态验证图-QD32显示使用4K QD32随机写入的IOPS在(0,1,2,3,4)回合进入了稳态,这里需要说明的是,两根虚线是20%性能浮动的控制线,必须连续五轮控制在虚线内才有可能通过这个测试,当性能稳定的盘上去,一般来说都是(0,1,2,3,4)直接进入稳定态了,而稳定性差点的盘上去,可能就是(7,8,9,10,11)这样的回合进入了,性能浮动较大的盘如果不能控制在20%以内的话,那就永远通不过这个测试,所以这个环节,从FOB状态到稳定态,C2000 2TB快速直接进入,而且前五轮性能一直在52000-53000 IOPS之间浮动,振幅很小,远低于通过测试的20%振幅,说明性能在过渡阶段良好,且过渡到稳定态的过程中效能稳定。

▲IOPS稳态收敛图-QD32显示相关变量如何收敛到稳定状态的过程

▲IOPS测试2D图-QD32

▲IOPS测试3D图-QD32

在稳定态下,4K QD32随机读240936 IOPS,随机写52553 IOPS。

虽然主控此时在不停的协调整个读写过程,应付不同数据块大小,不同读写比例的频繁切换,理论上硬件资源已经被榨干,就看此时此刻的主控还能否保证NAND的稳定高速读写。

测试结果全程无0 IOPS的数据出现,稳定态下的随机读,随机写和随机读写保持稳定渐进趋势,每个数据块大小读写与混合读写均能顺利完成测试,都是稳定态下效能稳定的体现。

这个测试由于是高速连续不间断轰炸,所以固件根本没有时间去GC回复效能,实打实的打出了这个盘最差状态下的表现。

这个测试的目的其实是模拟一个残酷且频繁的操作环境,将主控资源榨干到接近0,测试表现力,建立起一个最低的性能基线,然后给桌面版或者服务器端客户一个应用体验的参考,说的俗一些就是你们在实际服务器应用里再怎么瞎折腾也只会比这个结果更好,不会更差。

2、带宽测试

测试方法

进行Secure Erase安全擦除

对于['1024k', '64k', '8k', '4k', '512']数据块大小进行持续读写60秒为一回合(Round)

使用1024K持续写入的吞吐量作为测试目标,写入振幅20%平均值与测量值线性最佳拟合线的斜率作为验证进入稳定态的标准

▲带宽稳定态验证图-QD32显示C2000 2TB在执行1024K QD32持续写入的时候,在(20,21,22,23,24)回合才进入了稳态,并不是最理想的(0,1,2,3,4)回合,这个测试C2000 2TB在爆掉SLC Cache之后的性能振幅相当大,在100W 到 200W IOPS之间振动,这种高幅震荡导致了无法在较短时间内达标验证标准给出的写入振幅20%平均值与测量值线性最佳拟合线的斜率的条件,所以一路摇摇晃晃跑到了20轮才进入,但是总算是过去了。

▲带宽稳态收敛图-QD32显示相关变量如何收敛到稳定状态的过程:

写入部分:除了512B之外的所有的数据块都被控制在1GB/s到2GB/s之间振动。

读取部分:除了1024K、64K、512B的读取性能比较平滑之外,4K、8K都处于50%的性能振幅之中。

如此大的持续读写振幅导致了这个盘是无法快速进入稳定态的,必须要满满磨到20轮以上才开始进入。如果换一个性能比较稳定的MLC企业级盘理论上应该在(0,1,2,3,4,5)轮就应该进入稳定态了。

▲读写带宽测试2D图-QD32

我们可以看到QD32深度下持续读写各个数据块下的平均表现力,持续读最大带宽3057.411 MB/S,持续写最大带宽1595.747 MB/S。

3、延迟测试

测试方法

进行Secure Erase安全擦除

预处理:128K持续写入双倍SSD容量

对于['8k','4k','512']数据块大小进行100%读,65%读35%写,100%写的随机读写测试,测量最大最小以及平均的延迟,60秒为一个回合(Round)

使用4K随机写入的平均延迟作为测试目标,写入振幅20%平均值与测量值线性最佳拟合线的斜率作为验证进入稳定态的标准

▲延迟稳定态确认图-QD32显示了4K QD32随机写入过程中的平均延迟的均线在15.6微秒左右,在(3,4,5,6,7)回合达到了稳定态,并不是最理想的(0,1,2,3,4)回合。

▲延迟稳定态收敛图-QD32显示相关变量如何收敛到稳定状态的过程

▲平均延迟在所有进程中的表现在0.029毫秒到0.145毫秒之间

▲最大延迟涉及到的问题就是主控资源的充足度以及LDPC解码资源和耗费时间问题之间的平衡调节问题了,相对于3D TLC而言,写入部分的最大延迟普遍性高一些和以下一些因素有关:

1、主控的资源,比如主控的主频以及核心数,ARM构架或者MIPS构架的实际效能。

2、LDPC硬软解码的能力。

3、主控固件的硬软件开发能力。

C2000 2TB最大延迟在所有进程中的表现控制在14毫秒以内。可以发现一个有意思的规律:RD有意的去针对性的优化了最大延迟部分,比如4K部分最大优化读,而8K部分则去优化了写以及混合读写的部分,很明显的消费级市场化的操作。

关于最大延迟部分,举个例子消费级SATA盘中的SMI2258H主控+TSB 64层3D TLC的盘在这个测试中随机写最大延迟普遍在700毫秒以上。

▲平均和最大延迟3D图-QD32是整个以上延迟方面表现的汇总数据。

4、写饱和度测试

测试方法

进行Secure Erase安全擦除

执行4K随机写入1分钟为一回合(Round),写入4倍全盘容量或者24h,以先达到者为准

计算各个回合的平均IOPS(Avg IOPS)和平均延迟(Avg Latency)

▲写饱和平均IOPS图-QD32

这个测试写入了330多轮也就是330多分钟,纯写入任务相对于混合读写比例的测试要简单很多,这个测试的压力程度较低,主要考验NAND写入性能的稳定性,所以从空盘到写满四倍全盘容量的过程中没有发现4K随机写入性能发生衰减,4K QD32随机写入稳定在10W IOPS附近

▲写饱和平均延迟图-QD32显示C2000 2TB平均延迟稳定在1.2-1.4毫秒。

这个测试实际是个镜像测试,可以发现其实IOPS的上升和平均延迟的下降是个镜像关系,IOPS上升了,平均延迟就会下降,反之同理,他们保持着相对的同步性,且非常直观。

总结

总体来说,对于C2000 2TB这个盘给个定性不难:爆发力强,全速读写要求低于70度,散热压力大,稳定性尚可,价格便宜。

这个C2000 2TB作为消费级产品盘来说,是可以接受的,作为游戏盘或者系统盘来说没啥问题,毕竟NAND是群联封装的,而且也跑完了PTS性能验证。

作为企业级用途的话,不推荐作为持续读写较多的负载使用,作为系统数据库零碎文件的归集这类4K随机读写来说还行。

至于白片还是正片完全取决于对群联下单的成本,所以C2000也诞生了正片的版本C2000PRO,这个成本上会提升。群联这种大厂的白片交割测试还是相对比深圳小厂可靠很多,毕竟他要面对OEM订单的的退单风险,一旦退单造成的影响不仅仅是几千万上亿的经济损失,更要命的是行业口碑就会一落千丈,很难再有后续的OEM订单,所以群联公版的产品可靠性相对来说是值得在信任上加码的。

其实这个盘和海康没什么关系,从根本意义上说,是一个完全由群联设计制造的产品,包括固件都是群联公版的,只不过贴牌给海康销售而已,这个产品不同于海康和联芸合作的国产主控自研发产品,而是完整的外包方案,作为海康给群联公版10年的保修政策来看,两个公司之间的关系应该是铁到不能再铁了,而群联给海康的成本应该比其他家都低,否则这个盘做不到1500元的价格,从整个市场的价格反馈来看,目前2T的这货其他家都只能看着海康卖,原因估计也很简单:

1、海康很可能现金下了一个天量的期货单在群联那里,优先供货价格最低。也很可能买断了群联这个容量的货品的大陆终端销售。

2、海康的运营不得不说还是很有一套的,JD 618 SSD销量王的套路,每个单品的价格都打穿了市场的心理节点,不赚钱或者少赚钱也要拿到市场的占有率,这一点来说,小公司根本无法跟这种巨擘的资金流公司抗衡。

3、从消费者角度而言,一看保修政策,二看性能和稳定,三看销售量趋势和购买评价,这三点而言,海康无疑已经在运营单品的过程中做到了。

所以在大陆市场你能给产品质量提供足够的企业信用保证,而且心不黑不想赚钱,只求市场占有率,那么没理由你做不好这个市场。

TIP:临截稿之际,搞到群联公版2TB ECFM 12.3的固件,WINDOWS下直接升级,亲测可用分享给大家

文章来源: https://www.toutiao.com/group/6704136612667720196/