欢迎光临散文网 会员登陆 & 注册

Minecraft服务端性能测试:CPU红蓝对决

2023-07-18 23:22 作者:橫眉冷對千夫指  | 我要投稿

这段时间持续性地听说一些关于intel和AMD处理器在Minecraft服务端性能方面的流言,我决定做一回流言终结者,用实际测试搞清楚情况,同时以此指导我自己下一台服务器的配置。必须提前声明:本次测试是基于我自己的条件,服务于我自己的需求

一、测试环境

红方为 Ryzen 5 5600X(定频4.6GHz);蓝方为 Core i5-12500(无温度/功耗墙)。

测试双方使用不同的内存条,但内存参数均如图1,基本保持一致。

图1 测试双方的内存参数

测试使用同一块固态硬盘,操作系统为 Proxmox VE 7.4-16,Java 版本为 17.0.7,服务端为 1.15.2 fabric 端,安装的模组如图2,除 -Xms8G -Xmx8G 外无其他启动参数。

图2 mods文件夹

下面回答一些可能的问题。

①为什么是 12500 和 5600X ?

答:我只有这两个门当户对的CPU,它们都是六核十二线程,也能在大致相近的水平上分别代表大二缓的“intel模式”和大三缓的“AMD模式”。

②为什么是DDR4内存?内存参数有什么讲究?

答:我目前没有使用DDR5内存的打算,尤其是在服务器上。内存参数放得很宽,主要由于红方使用的内存条年代久远,无法再收紧了。

③这是什么操作系统?

答:PVE是一个着重于虚拟化的服务器系统,使用它是因为后续要进行虚拟化相关测试,但本次测试还未涉足虚拟化。在这里,你把它当成Debian GNU/Linux就行了。

④为什么是Java17?为什么是1.15.2?为什么装这些模组?

答:服务于我自己的需求。

二、测试项目

1.    侦测器音符盒

图3 侦测器音符盒信号链测试

2.    漏斗

图4 漏斗测试

3.    村民

以村民代表实体,在房间边缘用藤蔓防止计划外人口损失。

图5 实体测试

4.    TNT

用命令方块循环填充雪块、生成TNT爆炸、清除物品实体。

图6 爆炸测试

5.    活塞

图7 活塞测试

三、测试流程

启动计算机。

启动Minecraft服务端。每次启动均使用完全相同的存档,而不是上次测试结束后的存档。

tick warp 12000
player Steve spawn at -855.5 15.0 -839.5 #侦测器音符盒
tick warp 12000 #记录输出的mspt
tick warp 12000 #记录输出的mspt
tp Steve 1000.0 256.0 1016.0 #漏斗
tick warp 12000 #记录输出的mspt
tick warp 12000 #记录输出的mspt
tp Steve 1000.0 256.0 -1000.0 #村民
tick warp 12000 #记录输出的mspt
tick warp 12000 #记录输出的mspt
tp Steve -1009.5 249.0 993.5 #TNT
tick warp 12000 #记录输出的mspt
tick warp 12000 #记录输出的mspt
tp Steve 1999.5 4.0 18.5 #活塞
tick warp 12000 #记录输出的mspt
tick warp 12000 #记录输出的mspt

停止Minecraft服务端。

关闭计算机。

上述流程重复了四次。按时间顺序,第一、三次是蓝方测试,第二、四次是红方测试。这种测试方式的目的是排除更换平台导致的偶然因素,同时获取可以相互验证的测试结果。

四、测试结果

测试得到的数据如图8。

图8 测试数据

除活塞测试外,前四项测试的结果基本可以相互验证,排除了偶然因素。活塞测试的结果比较诡异,但我还是放出数据,由读者自行判断。下面只处理前四项的数据。

图9 mspt(绝对值)最大值、均值和最小值,越小越好

将所有数据除以蓝方平均值得到相对值。

图10 mspt(相对值)最大值、均值和最小值,越小越好

五、总结

图9和图10已经很直观了。

关于活塞测试为什么出现这种异常,我没有什么头猪,后续可能会放弃这一项目。

侦测器音符盒、漏斗、TNT三项中,蓝方相对于红方的优势与理论性能优势基本相符,但在TNT测试中被红方扳回一局,某些流言中蓝方大幅碾压红方的情况并没有出现。

累死了,这点东西我是怎么写了一晚上的。

Minecraft服务端性能测试:CPU红蓝对决的评论 (共 条)

分享到微博请遵守国家法律