测试期间的配置如下:
服务端:Mohist 1.20.1
已安装mod:禁用聊天举报(No Chat Reports)
服务器地址:175.8.162.45:25565
如何游玩该服务器:
1. 首先你需要准备好一个MC正版账号(如果没有MC正版请先购买MC正版账号);
2. 然后选择适合你自己的启动器(PCL2、HMCL等各种启动器皆可,推荐使用HMCL启动器);
3. 新建一个MC版本(1.20.1);
4. 安装forge和禁用聊天举报(可选);
5. 启动MC,进入多人游戏;
6. 选择添加服务器/直接连接,在地址栏输入175.8.162.45:25565,点击完成/进入服务器,如果你添加了服务器,你还需要双击RISCVerse那一栏方可才能游玩,如果你是在直接连接界面,直接点击进入服务器即可游玩该服务器;
7. 然后就按照MC生存模式的玩法玩吧。(我开了和平模式,所以不用担心蜘蛛啥的,除非有另行通知)
一台SG2042主机(感谢澎峰科技提供实验用的服务器)、Minecraft 1.20.1服务端(原版和MohistMC)、JDK19(针对RISC-V优化过)。
处理器型号:SG2042
核心数:64
内存:128GB
操作系统:Ubuntu 22.04
1. 我们使用的JDK是由Fizzed优化的nitro JDK 19(地址如下,然后从Release下载JDK并且解压下载下来的压缩包即可)。解压完毕后找到存放二进制文件的文件夹。
GitHub - fizzed/nitro: Alternative OpenJDK builds for architectures such as riscv64
https://github.com/fizzed/nitro
2. 测试二进制文件,看看Java是否能运行,如果出现版本号,那就说明该JDK是可以运行的。
然后将jdk文件重命名并移动到opt文件夹下。
请注意,涉及到系统目录下的操作必须要带上sudo,不然会提示没有权限。
3. 前往/opt,查看jdk_19是否在/opt下(如果用自己的命名方式的话请根据实际情况来判断该文件夹是否在/opt下)。
4. 然后设置环境变量:
sudo vim /etc/profile
5. 进入profile文件后在末尾输入以下内容:
export JAVA_HOME=/opt/jdk_19
export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
编辑完毕后退出。
6. 然后执行source /etc/profile,执行完毕后直接运行java -version,如果出现版本号那就说明JDK配置成功。
7. 进入原版服务端所在的文件夹下,执行java -jar server-1.20.1-official.jar nogui,如果出现以下提示:
你需要前往eula.txt将false改成true。
然后保存,退出,重新运行服务器。
成功运行,原版服务端启动耗时145秒(2分25秒)。
8. 由于服务器那边只开放了ssh端口,因此我们得使用ssh转发来转发25565端口,只要使用以下命令即可。
ssh -N -f -L 175.8.162.45:25565:127.0.0.1:25565 [email protected] -p 1001
或者使用autossh转发也行(当然个人推荐使用autossh)。
autossh -M 7281 -fCNR 25565:localhost:25565 [email protected] -p 1001
然后就成功撸树了。
9. 接下来换成MohistMC模组端
1)首先不装Mod试试,看看启动需要多久。
2)遇到这种情况的话,直接输入true即可:
3)原版端启动成功!接下来试试模组端,以下是安装模组的列表(未安装优化类模组):
4)MTR启动时出了点问题,希望MTR模组作者还是尽快修复吧(也有可能MTR的1.20.1版本还在测试阶段)。
5)移除掉MTR模组以后就可以正常启动了。
我在等待加载完毕的时候顺便还看了下btop,果然MC MOD服还得看单核性能。但是有128GB的加持,怎么吃也吃不满。够一堆人跑图的了。
6)加载完毕
最终启动耗时:
未安装模组:330秒(5分30秒)
已安装模组(未安装优化模组,且装了与维度和地形变更相关mod):22分13秒,对于一个单核频率只有2GHz的SG2042来说已经是一个不错的成绩了。
最终效果如下:
在相同的JDK下,且均没有现有的已生成的世界的情况下,使用官方服务端可以做到2分半左右即可开一个纯净服,而启动模组服的话,能做到5分半左右的成绩我已经很满意了。但是一旦涉及到维度和生物群系的增加,就会导致启动时间会变得更长(这取决于你安装了多少模组,以及模组的优化程度)。
因此,只要网络配置好了,在SG2042上开Minecraft Java服是可行的。
最后,欢迎大家来试试(由于该服务器已开启正版验证,因此需要使用Minecraft正版账号才能进入服务器游玩,除了多加了一个禁用聊天举报mod,其余的还是按照Minecraft原版的玩法)。
之前和几个玩家试玩下来,3个人游玩对于一台SG2042来说毫无压力。在没有其他CPU的计算应用运行的时候,tps在最好状态下可达到20,偶尔最差情况下不低于15。游玩下来偶尔会有点抽风,但是来说还算流畅。
以下是建筑的成果:
Optimized OpenJDK Build for riscv64! - VisionFive 2 (English Forum) - RVspace Forum
https://forum.rvspace.org/t/optimized-openjdk-build-for-riscv64/1417
Download server for Minecraft | Minecraft(参与本次测试所使用的的服务端)
https://www.minecraft.net/zh-hans/download/server
Download Mohist - MohistMC(参与本次测试所使用的的服务端)
https://mohistmc.com/download
GitHub - fizzed/nitro: Alternative OpenJDK builds for architectures such as riscv64(参与本次测试所使用的的JDK)
https://github.com/fizzed/nitro
正文完
《RISC-V公测平台发布》系列文章会持续跟大家分享澎峰RISC-V生态圈的开发者朋友们在RISC-V平台的移植测试成果,目前已发布:
1. RISC-V公测平台发布 · Stream带宽完整测试
2. RISC-V公测平台发布 · 我的世界MohistMC(本篇)
未来计划发布:
1. RISC-V公测平台发布 · 第一个WEB Server“Hello RISC-V”
2. RISC-V公测平台发布 · 第一个BLOG Server"RISC-V成长日记”
对服务器平台有任何的疑问都可以查阅《快速使用指南》(实时更新)。
64核RISC-V高性能处理器公共测试云平台 · 快速使用指南
https://www.kdocs.cn/l/cmnYcyFIlVRx