Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Creators
Details
This mod adds optimizations to noise generation.
Optimizations
What optimizations are applied for noise gen
- [X] Faster resizing of palettedContainer during noise gen
- [X] Faster block state updating during noise gen
- [ ] Faster heightmap calculation
- [ ] Faster block counting Couldn't optimize, and mod (lithium) incompat
Is it different from noisium
Yes, noisium only directly accessed palettedContainer and some other micro-optimizations. This mods adds further optimizations.
Vanilla Parity
Yes, the mod maintains complete vanilla parity.
How fast is it.
Mostly micro-optimizations. Not too fast. Here is a Comparison.
Mods used: Fast Noise 1.0.6+1.21.11
ChunkPos: -16,-16 -> 16,16
End ChunkPos: 112,112 -> 144,144
Chunks: 1089
Optimized:
Benchmark (worldName) Mode Cnt Score Error Units
BiomesBenchmark.biomegen end avgt 5 22.281 ± 0.062 ms/op
BiomesBenchmark.biomegen nether avgt 5 214.320 ± 0.280 ms/op
BiomesBenchmark.biomegen overworld avgt 5 4688.326 ± 14.383 ms/op
NoiseBenchmark.noisegen end avgt 5 3611.556 ± 6.517 ms/op
NoiseBenchmark.noisegen nether avgt 5 1276.523 ± 2.584 ms/op
NoiseBenchmark.noisegen overworld avgt 5 11949.279 ± 66.914 ms/op
Vanilla:
Benchmark (worldName) Mode Cnt Score Error Units
BiomesBenchmark.biomegen end avgt 5 27.645 ± 0.052 ms/op
BiomesBenchmark.biomegen nether avgt 5 232.020 ± 0.324 ms/op
BiomesBenchmark.biomegen overworld avgt 5 4711.916 ± 37.429 ms/op
NoiseBenchmark.noisegen end avgt 5 4340.792 ± 4.311 ms/op
NoiseBenchmark.noisegen nether avgt 5 2001.412 ± 15.960 ms/op
NoiseBenchmark.noisegen overworld avgt 5 13992.189 ± 57.262 ms/op
Speedup
Overworld: Biome: 1.005x Noise: 1.17x
Nether: Biome: 1.082x Noise: 1.567x
End: Biome: 1.24x Noise: 1.201x
Its hard to benchmark this, just hardware issues cause 50% slower or faster worldgen for me randomly.
I also can't configure threading,forking for jmh.
The benchmarks may have some inaccuracies.
Mod support
It should not conflict with other mods. As long as they don't mixin into populateNoise,populateBiomes function in minecraft. And don't change how minecraft internal block/biome storage works.
Moonrise is incompatible



