拿来测试的CPU均是单核,一共4款,型号如下:
Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz
Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
AMD EPYC 7501 32-Core Processor
这里还真不得不提一下Linode母鸡CPU的历史,Linode最早沿用的一批机器CPU应该是L5520,那个时候的Linode还是使用的Xen架构,CPU核心是多台小鸡共享。
后来迫于DO/Vultr的压力,不得不进行升级,升级后用的最多的一款U是E5-2680v2,后面陆续增加了一些E5-2680v3。在E5-2680v2/v3使用了一段时间后陆续可以开出来一些E5-2697v4,再然后就有了现在最容易开出来的AMDEPYC7501和Gold6148。
可能还有漏掉的型号,这里就不说了,只说几个最容易开出来的。单从这些CPU型号上来说,感觉是一个比一个高大上,但对于这种单核心的KVM小鸡来说,真的只看CPU型号就能代表性能吗?这也是我一直以来比较好奇的地方。所以就有了这篇文章的诞生233。
这里我使用三个测试工具进行不同的测试,sysbench测试CPU素数,geekbench4测试CPU综合能力外加跑分,最后phoronix测试套件测试编译php7的耗时时间。
4台小鸡使用完全相同的系统,完全一样的配置:
Distributor ID: Debian Description: Debian GNU/Linux 9.9 (stretch) Release: 9.9 Codename: stretch
Geekbench4安装和测试命令:
wget http://cdn.geekbench.com/Geekbench-4.3.3-Linux.tar.gz tar -xzvf Geekbench-4.3.3-Linux.tar.gz cd Geekbench-4.3.3-Linux ./geekbench4
Sysbench安装和测试命令:
apt -y install sysbench sysbench --test=cpu --cpu-max-prime=20000 run
Phoronix-test-suite测试套件安装:
apt -y install gdebi-core unzip wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_8.8.1_all.deb gdebi phoronix-test-suite_8.8.1_all.deb
测试编译PHP耗时:
phoronix-test-suite benchmark build-php
Geekbench4跑分结果:
Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
Geekbench4跑分详细:https://browser.geekbench.com/v4/cpu/13611132
Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz
Geekbench4跑分详细:https://browser.geekbench.com/v4/cpu/13611137
Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
Geekbench4跑分详细:https://browser.geekbench.com/v4/cpu/13611136
AMD EPYC 7501 32-Core Processor
Geekbench4跑分详细:https://browser.geekbench.com/v4/cpu/13611139
根据Geekbench4跑分可以得出如下结论:
Gold6148完爆其他三款U,E5-2680v2略逊E5-2697v4,而AMDEPYC7501最渣。
Sysbench测试结果(时间越短越好):
Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
Test execution summary: total time: 24.3864s total number of events: 10000 total time taken by event execution: 24.3854 per-request statistics: min: 2.41ms avg: 2.44ms max: 5.61ms approx. 95 percentile: 2.47ms Threads fairness: events (avg/stddev): 10000.0000/0.00 execution time (avg/stddev): 24.3854/0.00
Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz
Test execution summary: total time: 32.8367s total number of events: 10000 total time taken by event execution: 32.8290 per-request statistics: min: 3.25ms avg: 3.28ms max: 8.81ms approx. 95 percentile: 3.34ms Threads fairness: events (avg/stddev): 10000.0000/0.00 execution time (avg/stddev): 32.8290/0.00
Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
Test execution summary: total time: 31.1452s total number of events: 10000 total time taken by event execution: 31.1423 per-request statistics: min: 2.98ms avg: 3.11ms max: 5.78ms approx. 95 percentile: 3.48ms Threads fairness: events (avg/stddev): 10000.0000/0.00 execution time (avg/stddev): 31.1423/0.00
AMD EPYC 7501 32-Core Processor
Test execution summary: total time: 27.2965s total number of events: 10000 total time taken by event execution: 27.2908 per-request statistics: min: 2.36ms avg: 2.73ms max: 19.89ms approx. 95 percentile: 3.68ms Threads fairness: events (avg/stddev): 10000.0000/0.00 execution time (avg/stddev): 27.2908/0.00
根据sysbench的测试结果,得出如下结论(sysbench这个测试结果不能代表一颗CPU的整体计算能力好坏。)
Gold6148表现最好,其次是AMDEPYC7501,而E5-2697v4略逊E5-2680v2。
Phoronix-test-suite测试套件测试编译PHP耗时,数值越低越好。(我觉得这个测试最有实际意义,也最具参考价值。)
Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz
Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz
Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz
AMD EPYC 7501 32-Core Processor
综合上述,可以得出一个比较准确的结论:
Gold6148最牛批,毕竟“金牌”加身,以后在Linode开小鸡无脑刷这个U就对了!而AMDEPYC7501不是说这个U不好,而是单核真的打不过Intel啊。。
此外,别看E5-2697v4整整比E5-2680v2多了8个核心,但和我们这种只开最低配的穷b有啥关系emmm?E5-2697v4的单核性能和E5-2680v2的单核性能其实差不多,甚至在编译这块还不如E5-2680v2,所以主频高也算是一个天然的优势。
以上仅代表在Linode这个平台内的测试结果,我没有考虑虚拟化导致的性能损失,以及商家超售等因素在内,此外Linode可能还对单核有额外的限制,所以结果仅供参考。
不过总的来说,和我没测试之前的猜想还是有一点出入,没测试之前我是猜测E5-2680v2表现最好,Gold6148其次,结果没想到Gold6148这么出彩。。。
vultr新上的高性能真他妈给力,6刀 1核1G,单核geekbench 6000分顶linode 2-3核,4k io读写碉堡吊打linode(还有线路超给力,移动cmi直连本地一天不丢包)
顺带说一下vultr 普通3.5刀那个可以刷出3.3-3.6GHz的小鸡,单核3400-3900分
刚去开了十几台,没一个IP是通的,全部被墙了,国人是真的牛批嗷。。
CPU性能确实吊打Linode了,硬盘应该也比Linode好,看介绍说这个系列目前都是NVME的盘子。。