威刚把企业级SSD可视化性能测试工具开源了!

在2018年闪存半导体技术峰会上,来自威刚科技的李鑫介绍了在SSD测试方面的好消息,众所周知,面向消费级SSD测试工具其实还比较简单,企业级的SSD测试则会因为场景差异性较大,所以对测试的要求更高,威刚遵从行业标准,做了一套可视化的性能测试工具,为行业人士贡献了一个好东西。

以下内容来自现场速记:

李鑫:大家好,我是李鑫,来自威刚科技。我个人从事软件开发有20多年的历史,在威刚超过5年的时间,主要做软件的开发部分。我今天想分享一个软件,我们把它当做一个小菜。我分享的题目是以开放源码为基础分析SSD性能的测试软件,这个软件不仅符合测试规范,而且以开放源码的方式提供给大家。

威刚科技成立于2001年,专门从事储存装置、研发。回顾在SSD方面的发展历程,我们是从2007年开始做SSD的研发,2012年我们在日本市场表现不错,市占率第一,2016年在全球市场达到第四,2018年我们加入了一个协会,就是JEDEC协会,加入协会以后制定新的标准,我们联合制定了一个NGSSF的标准。

SSD在过去10取得了非常快的发展,体积小、容量大、速度快,而且耗电低,普遍为市场接受,虽然它有不同外表,但是内部的硬件主要分为三个部分,各家做硬件的方法不太一样,SSD组成主要是由主控芯片、闪存芯片及固件算法组成,主控的不同,闪存类型及通道数的不同,SSD性能都有很大的差异。

威刚作为一家SSD的开发商,对SSD的开发、测试非常重视,我们必须要有一个工具验证整个SSD产品的特性,特别是对开发人员来讲。

在坊间可以看到很多测试工具,它们都有类似的测试内容,每一个测试软件测出来的东西不同,因为里面的工作负载不同。受到传输结构影响,装置的负载都不见得会一样,但如果你是一般的消费级产品可以用这些测试装置找出可用的符合实际的应用。

IT、企业端的用户关注应用上的特定工作负载,需要找到读写的需求量是什么,再决定下一次采购新的设备的时候怎么做,所以它更需要一个软件做这方面的分析。

不同的工作负载,读写比例配置等等配置不同都会影响到SSD的性能,一般消费者与企业端客户的需求不一样。但都面临一个难题,手边的测试的结果是不是你真正需要的?能不能反映真实环境下的性能表现?

所以,一定要有测试验证工具,刚才提到的工具我们都在用,但是我们觉得不够,为什么不够?

因为那些工具都已经固定了,跑出来的分数可能是取一个峰值,但是对企业端是不够的。我们有必要自己去开发一个软件,可以从开发过程中知道测试依据的方法,而且可以修改代码,做一些特制的软件,这个测试是SSD整体的测试,和FTL测试不同。

我们提出的解决方案是做一个开源的软件包,在软件包上要符合标准测试的规范,SNIA有一个,我们希望用这样的方式做一个标准的测试,我们完成之后把它开放出来了。不同的测试工具测出来的数据不一样,SNIA也面临这样的问题,从2003年就意识到这个事情,2018年产生了2.0版,整合了企业端的测试。一般的测试也有,但是它也有所谓的企业级,不同企业用户可以做一些调试,比如说块的大小,符合企业的需求。我们开发这个软件以这个为主,这样才会真正。

对于消费者端,都是一些跑分软件,只要读写数据高的话,用户都非常满意。对于企业端来讲,他希望是稳态的性能,后面有一些算法,一直到最后的Steady,性能表现不超过10%,所有的性能依据以这个为准。我们的测试软件以这边为依据,用开放源码的方式进行。

既然有一个规范,这边可以看到开放源码的基准,可以看到它的参数相当多。

我们在软件上面做了一个修改,用堆叠的方式比较明显。第一个是包含和部分,包括Web UI和Apache server,数据库用的是MariaDB。PTS test suite用的是PHP,产生的测试报告有文字、图像,PHP可以方便地做可视化。FIO是模组,负责IO测试的部分。

从另外一个角度看,User Report,Test process,测试中期是Test process,这是一个测试的过程。界面部分,测试使用者可以在管理层这边,登录以后可以做两件事情,测试管理和测试进程。

我们看几个重要的页面,登录测试页面以后输入测试的配置,企业级场景有参数可以修改,修改读写比例,参数输入完以后就可以进行测试了,用户可以选择什么时候测试,测试的时长,结束的时间,测试的项目是什么,产生的测试报告以PDF的形成出现。

测试软件符合PTS(SNIA Solid State Storage (SSS) Performance Test Specification (PTS) v2.0 )标准,标准当中灰色的部分是测试项目。

下面分成四大区块,会自动显示测试平台,第二个是待测装置,然后设定参数,这个报告是随机测试的结果,然后有一个测试参数。如果做完整的测试,大概有六七十个报告。

这个叫Cross Stimulus Recovery测试,左边是Throughput,可以看出来它的变化,顺序写入的时候流量最大,变成小量的时候红色的线非常快的掉下来了,然后到底端。

此项成果已经成为GitHub上开放源码软件。链接

总结,我们非常努力的在完成软件的开发,PTS标准总是要有人去实践,我们符合规范。同时又一个完整UI可视化的呈现,自动产生测试报告,同时有一个便于使用的人机界面来做管理。我们把它变成一个开放软件方便大家使用,我们以一个开放的心把它回馈给开源社群,以上是我的报告分享,接下来是我的联络方式,

shing_lee@adata.com,大家可以与我取得联系。我是从台湾过来的,这是我第一次来到武汉,谢谢各位的时间!