Affects Version/s: 1.15.2
Fix Version/s: None
Environment:Minecraft 1.15.2 (1.15.2/vanilla) , OS: Windows 10 64-bit , RAM: 8GB , Java: 1.8.0_51 64bit , CPU: 4x Intel(R) i5-7300HQ @ 2.50GHz , GPU : GeForce GTX 1060 3GB/PCIe/SSE2 , Display: 1920x1080 (NVIDIA Corporation) 4.6.0 NVIDIA 388.46 , VSYNC: On , MaxFramerate : 120 FPS , Chunk Distance : 12 chunks
Backstory :[ I discovered this way back when 1.13 came out when i had a 1.12.2 world with 2000 villagers in a village being chased by zombies. When i converted the world to 1.13 the game was only able to support 900 entities with the lowest settings possible and allowing the game to use the max amount of memory using the JVM use memory arg. ]:
Note: There could be similar bug reports however none were on 1.15.2 or 1.15 and did not cover the same issues but rather different but similar ones. Sure 1.15.2 performs better than 1.14 but the difference between 1.12.2 and 1.15.2 are too big to say that the issue is solved.
(the newest version) which performs better than and still has performance issues both with FPS and TPS and seems to still use more memory than . This issues seems to affect both singleplayer and multiplayer.
Also there are huge differences between chunk loading and chunk loading. had it chunks load almost as fast as in the bedrock edition of minecraft. But had its chunks load much slower than . Also had lower FPS and TPS when loading those chunks opposed to .
Sidenote: I remember when i had a potato laptop with horrible specs (temporary computer) had huge issues running minecraft with the lowest settings possible so I'd imagine that WOULD NOT RUN AT ALL on that machine. This is could be a serious issue to lower end devices and could make them unable to play minecraft.
So i decided to run some stress tests with both 1.12.2 and 1.15.2 with the F3 menu and graphs open to observe the difference. Both versions used the same installation profile in the launcher and the same settings.
Here are the JVM Args of the profile : [-Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M] (The JVM args are the default ones which the launcher automaticly set)
In the first test i tried 1000 bats on both versions and i did optimize the world for the newer version to not have any world conversion lag. performed much worse than in every way. The images showing this are in the files part of the report. I also added the debug files from the tests but the debug profile does not contain the .zip dump.
In the second test i tried chunk loading while flying with a 12 chunk render distance in a superflat world. And the world loaded chunks even when i was flying really fast on spectator mode. But on the chunks didn't load as fast as in the other version. This difference grows even bigger on non superflat worlds as there are more entities and blocks. The side by side comparison is in the files part of the report as well. ()