以下是正文:众所周知,Minecraft在更新到1.8之后的版本之后,因为种种原因,游戏的内存使用变得居高不下。这种问题在mod玩家中尤其致命,现在流行的大型1.12整合包如Sevtech和All the mods等通常需要5-6g内存才能带起来。纵然有Foamfix等优化mod,比起1.7.10时代对内存需求的增长仍然极为恐怖,这也是1.12目前在国内mod玩家之间不够普及的一大原因。 笔者最近在FTB reddit上闲逛的时候偶然发现了这么一个帖子 被吞掉的链接.jpg 该帖子作者在里边叙述了一种通过使用另外一种Java虚拟机(openj9)大幅降低MC内存占用和启动时间,并能有效提高游戏内FPS的方法。 我在看到这个帖子之后,将本方法推荐给了黑猫等人,初步测试结果(1.7.10)效果非常好,游戏性能有明显的提升。 今天我在我目前正在开发的一个1.12整合包上进行了一下初步测试 我的配置是:i5-4670k,GTX1080,16G 内存默认内存分配为:Xmx:6500m,Xms:6500m 内存占用来自于资源管理器 以下是测试结果: · 测试1:原版Oracle JVM,使用G1GC o 启动时间:3:31o 主菜单内存占用:7837 mb o 进入世界时间:0:57 o 游戏内帧率:300- 310 FPS o 游戏内内存占用: 8450 mb · 测试2:原版Oracle JVM,未使用G1GC,无任何附加JVM参数 o 启动时间:3:17 o 主菜单内存占用:5814 mb o 进入世界时间:0:53 o 游戏内帧率:290 - 310 FPS o 游戏内内存占用:6360 mb · 测试3:Openj9,无任何附加JVM参数 o 启动时间:3:14 o 主菜单内存占用:4650 mb o 进入世界时间:0:50 o 游戏内帧率:370 - 380 FPS o 游戏内内存占用:5300 mb 可以看到内存占用比起我们平常用的Oracle JVM有大幅降低,FPS也有非常大的提升。我相信在未来一定有更大的发展空间。 注意,本jvm可能和某些mod/服务端有未知的兼容性问题,出现情况请报告给mod/服务端作者,本文作者不对产生的任何问题负责。