近年来,在云计算、大数据和人工智能等技术的快速发展下,数据中心的计算能力也面临着越来越高的挑战。就数据中心的CPU处理器选择而言,AMD因其最新一代EYPC处理器的强劲性能、低功耗以及低成本的优势逐渐赢得主流云厂商的青睐。
据悉,AWS、谷歌云、UCloud、Azure、IBMCloud、腾讯云等云商均已推出基于AMDEYPCCPU型的云主机,属于云厂商中的先行者。为了便于用户直观比较不同云商的AMD云主机的性能差异,年5月初,CIO时代学院发起了针对市面上几款主流的AMD云主机测试。本次测试的AMD型云主机在保持尽量相同的测试环境下,提供客观公正的测试数据,从技术层面对不同厂商的AMD云主机进行性能(CPU、磁盘、网络等)与性价比测评分析。
一、选型说明
本次参与实测的AMD云主机型号分别是国内的UCloud快杰型AMD、腾讯云SA2,国外的AWSm5a、Google云n2d。在高性能云主机的常用配置中,我们对四家云商分别选择了8核32G和G数据盘。下图是具体的配置信息:
图1:云主机配置详情
二、测试方法
本次测试主要利用Unixbench性能测试工具、Pi圆周率测试、FIO、Netperf等测试方法,对云主机的CPU性能、磁盘性能和内网质量等分别进行测试,此外还针对Nginx、MySQL、ClickHouse三种常见的应用场景做了测试比较。
本报告中的每项测试指标均以3次测试的平均值作为最终数据,且云主机每完成一次测试需空跑8小时以上再进行下一次测试。
图2:云主机测试明细
三、实际性能考察
为了更加清晰直观的展示四款AMD云主机的性能差异,我们摘取了本次测试结果中的几个重要技术指标以供大家参考,包括CPU耗时、磁盘IOPS、数据包转发PPS、TPS/QPS等等。
1、CPU性能
CPU是云主机操作系统稳定运行的根本,CPU的运行时间在很大程度上决定了云主机的性能。我们在相同测试环境下使用bc命令进行浮点运算,小数点后的位数为,测试耗时越短则表明性能越好。搭载了AMDEYPC处理器的四款云主机,在CPU性能上是否有差距呢?我们来一探究竟:
图3:CPU运算平均耗时(由短到长排列)
根据上图我们可以直观的看出,在8核CPU的情况下计算PI圆周率时,UCloud耗时最短为16.54秒,AWS耗时最长为21.11秒,腾讯云和Google云则相差不大,分别为17.42秒和18.02秒。UCloud相比腾讯云和Google云可减少0.88秒~1.48秒的CPU耗时,比AWS可节省大约4.57秒的运行时间。由此可见,与另外三家对比,UCloud的AMD云主机在CPU性能上最高可提升21.6%。
2、磁盘性能
在云主机的存储性能方面,IOPS和IO时延作为衡量磁盘性能的重要指标,理论上,IOPS越大越好,时延越低越好。本次测试我们使用的FIO工具选择了libaio引擎测试,块大小配置为4k,测试生成的文件大小为G。这里我们主要观察队列深度分别为1*1和7*16的情况下,磁盘每秒随机读写的操作次数以及平均时延。
图4:队列深度1*1的随机读写
图5:队列深度1*1的平均时延
图6:磁盘随机读写于队列深度1*1详细数据表
图7:队列深度7*16的随机读写
图8:队列深度7*16的平均时延
图9:磁盘随机读写于队列深度7*16详细数据表
由数据图表可见,在队列深度1*1和7*16时,UCloud的IOPS和平均时延都具有明显优势,而其他三家相差不大。在队列深度为1*1时,UCloud随机读的数量是排名第二的AWS的2.5倍,而随机写的数量更是比排名靠后的腾讯云高出10倍。在队列深度为7*16时,UCloud随机读写能力依然表现突出,是排名第二的腾讯云的4倍,AWS和Google云比较接近,均不太理想。
3、网络性能
云主机每秒所处理的网络包数量是内网性能的核心指标,内网环境下的网络情况直接会影响服务之间的交互。本次内网性能测试中,我们使用了Netperf网络性能测试工具,通过8台辅助机和1台测试机,使用UDP协议+小包,小包大小为1byte,在同等情况下,统计测试机每秒收到包的数量。下面,我们来看看这四款云主机的表现:
图10:内网平均每秒收包数(由多到少排列)
通常情况下,云主机每秒接受的小包数量越多,则表明内网质量越好。根据上图测试结果可以看出,UCloud每秒接受小包数量最多,约为.64万个左右,相当于腾讯云的2.5倍,而Google云、AWS和腾讯云这三家云平台每秒接收数在-万左右,其数量差距不是很大,都有较大提升空间。
4、特定场景表现
·Nginx测试
Nginx是一个高性能的HTTP和反向代理web服务器,是网站门户用户的首选。Nginx具有并发能力非常强的特点,因此对运营商主机的网络能力要求非常高。根据Nginx的每秒处理请求数,就可以看出服务器的抗压能力。
我们使用ab压测工具进行测试,ab工具可以创建多个并发访问线程,模拟多个访问者同时对某一个URL地址进行访问,其原理类似CC攻击。因此,在这样高并发的测试下每秒处理请求数越大表现越好,单请求耗时与测试耗时越少则表现越好,也意味着访问请求丢失越少。
图11:Nginx平均每秒收包数(由多到少排列)
图12:Nginx测试详细数据表
上图是我们根据ab压测请求数万,一次并发请求数为得出的平均数据,很明显可以看出UCloud在这次压力测试下,各项指标均表现最佳,远超出其他云平台。在每秒处理请求数上,UCloud高出腾讯云2倍,Google云、AWS、腾讯云分别位居第二、三、四位;在单请求耗时和测试耗时方面,UCloud也仅占其他三家的1/3左右时长。
·MySQL测试
MySQL数据库的性能状态通常可以反映服务器的CPU、内存和磁盘性能,也更能体现出云主机的性能差异。我们使用sysbench基准测试工具对数据库中一个表存放万条数据,并同时开启个线程,得出结果数据:每秒请求数QPS与每秒事务数TPS越大,则表现越好;测试耗时与平均时延越小,则表现越好。
图13:MySQLQPS对比(由多到少排列)
图14:MySQLTPS对比(由多到少排列)
图15:MySQL测试详细数据表
QPS和TPS作为衡量数据库性能的关键指标,也是云主机性能的直接体现。根据上图测试数据可以看出,在MySQL场景下,UCloud的QPS和TPS请求数量均表现超前,腾讯云紧随其后排名第二,AWS和Google云分别位列第三、第四。经计算得出,UCloud云主机的QPS和TPS比其他三家均高出38%~70%左右的性能。
·ClickHouse测试
ClickHouse是一个用于联机分析处理(OLAP)的列式数据库管理系统,会使服务器上一切可用的资源,以最自然的方式并行处理大型查询。ClickHouse目前已经被很多用户应用于大数据分析处理业务上,因而对ClickHouse的支持能力,同样是云主机性能是否良好的一个重要体现。
我们在云主机上安装单机版本ClickHouse19,在ClickHouse上做数据分组查询,测试数据集:ontime,16G,.95millionrows。然后取前10条数据,最终耗时越短,则表现越好。
图16:ClickHouse测试耗时(由短到长排列)
根据上图可以看出,UCloud耗时最短为2.秒,与紧随其后的腾讯云差距不是很大,但Google云耗时最长,且UCloud最终耗时比Google云可降低大约42%。
四、综合性价比考察
·性能得分
除了上文所述的AMD云主机各项基础性能测试外,为了进一步展现该云平台AMD云主机的综合性能(如系统调用、读写、进程、图形化测试、2D、3D、运算等),我们利用Unixbench工具进行测试,得出一个直观的数据来进行对比。
图17:云主机平均性能得分(由高到低排列)
根据上图的测试结果,我们可以看到在8核AMD云主机的配置下,UCloud性能得分最高约为.4,腾讯云排名第二,性能得分为5.4,AWS相对较低,性能得分为.8,且UCloud性能得分比其他三家分别高出约25%~80%,优势还是非常明显的。
·关于价格
在充分比较了四款AMD云主机的性能差异后,接下来就是用户最为关心的问题——价格。下图我们是以AMD为前提下选择相同配置的云服务器的每月价格,所有云主机都是以