Fast Noise

Quick rating

Fast Noise

No reviews yet

This optimizes noise generation

No Theme
No Genre
World Gen Improvements
Performance & Optimization
Mod Loaders
Forge
NeoForge
Fabric
Quilt
Minecraft
26.2

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Optional
Server Optional

About

Project Details

Type
Mod
License
Mozilla Public License 2.0
Latest Version
Fast Noise 1.0.14+1.21
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

About

Description

<center>

Keep Android Open | Contact Regulators to stop Google's lockdown of Android

</center>

Fast Noise is a modern optimization mod to improve world generation times. I regularly update the mod to latest minecraft versions, bring improvements to the mod, and provide stable releases.

Does the mod change world generation? The mod maintains vanilla parity, including with any datapacks. Do keep in mind, Vanilla non-determinism.

Can I use custom worldgen mods with this? Yes, I try my best to maintain mod compatibility, and only modify safe code. Specific optimizations that may affect mod compatibility are disabled by default.

FastNoise is part of Reverie Projects, check out our other mods as well.

<center>

Available on codeberg Available on curseforge Available on modrinth Support me on Ko-Fi

</center>

How does this mod work?

Fast noise optimizes storing block and biome data into chunks for the duration of worldgen.

<details> <summary> Technical Details </summary>

Fast noise replaces populateNoise,populateBiomes in NoiseChunkGenerator and surfaceBuilder in SurfaceBuilder.

Fast noise optimizes world generation by making several strong assumptions about how world generation works. By replacing vanilla's generic and debug code for world storage with faster, more packed calculations, fast noise achieves faster throughput.

Some key methods used to achieve that are, reducing allocations, avoiding palette resizing, delaying/packing block counting, precalculating data, caching block state information and more.

</details>

How fast is it?

About 10-18% improvement to overall worldgen in overworld in 1.21.11 on latest versions.
Much higher improvement in nether, end
Here is a Jmh Benchmark Software.

<details> <summary> Chunky benchmark </summary>

12 threads w/ mod

  [12:39:32] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 16641 chunks (100.00%), Total time: 0:01:37

W/o mod

  [12:43:08] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 16641 chunks (100.00%), Total time: 0:01:47

4 threads w/ mod

  [12:56:23] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 9409 chunks (100.00%), Total time: 0:01:10

W/o mod

  [13:01:11] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 9409 chunks (100.00%), Total time: 0:01:23

With higher distance W/o mod

  [13:11:01] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 19881 chunks (100.00%), Total time: 0:02:43

W/ mod

  [13:16:03] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 19881 chunks (100.00%), Total time: 0:02:21

</details>

<details> <summary> Jmh benchmark </summary>

Mods used: FastNoise 1.0.37+26.2 on 26.2
ChunkPos: -16,-16 -> 16,16
End ChunkPos: 112,112 -> 144,144
Chunks: 1089
Mods used: c2me-fabric-mc26.2-0.4.2-alpha.0.9.jar

Benchmark                 (worldName)  Mode  Cnt      Score     Error  Units
BiomesBenchmark.biomegen    overworld  avgt    5   3058.005 ± 256.587  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    188.188 ±   3.156  ms/op
BiomesBenchmark.biomegen          end  avgt    5     31.560 ±   4.200  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  12332.480 ± 364.223  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   2447.385 ±  20.773  ms/op
NoiseBenchmark.noisegen           end  avgt    5   6420.598 ± 195.649  ms/op
SurfaceBenchmark.surface    overworld  avgt    5  14948.653 ± 333.900  ms/op
SurfaceBenchmark.surface       nether  avgt    5   9330.611 ± 243.701  ms/op
SurfaceBenchmark.surface          end  avgt    5   3485.872 ±   8.225  ms/op

Benchmark                 (worldName)  Mode  Cnt      Score     Error  Units
BiomesBenchmark.biomegen    overworld  avgt    5   2980.699 ±  98.824  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    177.827 ±   2.815  ms/op
BiomesBenchmark.biomegen          end  avgt    5     14.990 ±   0.575  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5   9419.623 ± 317.746  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1253.599 ±  15.977  ms/op
NoiseBenchmark.noisegen           end  avgt    5   5424.879 ±  81.860  ms/op
SurfaceBenchmark.surface    overworld  avgt    5  10490.488 ± 901.258  ms/op
SurfaceBenchmark.surface       nether  avgt    5   3361.448 ±  53.809  ms/op
SurfaceBenchmark.surface          end  avgt    5      1.723 ±   0.289  ms/op

Speedup:

Stage/Dimension Overworld Nether The End
Biome 1.025x 1.058x 2.105x
Noise 1.309x 1.952x 1.183x
Surface 1.424x 2.775x 2023.14x

</details>

<details> <summary> Old Jmh Benchmark </summary>

Mods used: Fast Noise 1.0.15+26.1 on 26.1 snapshot-6
ChunkPos: -16,-16 -> 16,16
End ChunkPos: 112,112 -> 144,144
Chunks: 1089
Mods used: (c2me)

With mod:
Benchmark                 (worldName)  Mode  Cnt     Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5    11.786 ±  0.168  ms/op
BiomesBenchmark.biomegen       nether  avgt    5   174.833 ±  1.166  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5  2401.797 ± 31.629  ms/op
NoiseBenchmark.noisegen           end  avgt    5  3052.242 ± 12.358  ms/op
NoiseBenchmark.noisegen        nether  avgt    5  1039.086 ±  6.467  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  8441.811 ± 41.396  ms/op

With only c2me:
Benchmark                 (worldName)  Mode  Cnt      Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5     26.058 ±  0.245  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    185.957 ±  2.203  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5   2464.937 ± 29.007  ms/op
NoiseBenchmark.noisegen           end  avgt    5   3925.059 ± 14.292  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1920.705 ±  9.864  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  11552.674 ± 54.112  ms/op

Vanilla:
Benchmark                 (worldName)  Mode  Cnt      Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5     27.051 ±  0.118  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    239.634 ±  1.702  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5   4589.322 ± 80.331  ms/op
NoiseBenchmark.noisegen           end  avgt    5   4477.113 ± 36.133  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1951.438 ±  5.748  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  14249.612 ± 57.388  ms/op

Vanilla:
Benchmark                 (worldName)  Mode  Cnt     Score    Error  Units
SurfaceBenchmark.surface    overworld  avgt    5  5982.828 ± 17.992  ms/op
SurfaceBenchmark.surface       nether  avgt    5  2677.115 ±  9.293  ms/op
SurfaceBenchmark.surface          end  avgt    5   924.604 ±  5.376  ms/op

With Mod:
Benchmark                 (worldName)  Mode  Cnt     Score     Error  Units
SurfaceBenchmark.surface    overworld  avgt    5  4820.672 ±  24.669  ms/op
SurfaceBenchmark.surface       nether  avgt    5  1914.289 ± 644.099  ms/op
SurfaceBenchmark.surface          end  avgt    5     0.014 ±   0.003  ms/op

Speedup
Overworld: Biome: 1.026x Noise: 1.368x Surface: 1.241x
Nether: Biome: 1.063x Noise: 1.847x Surface: 1.398x
End: Biome: 2.21x Noise: 1.285x Surface: 66357x

</details>

The benchmarks may have some inaccuracies.

Socials

Chat with us on discord Chat with me on mastodon Chat with us on Gitter

FAQ and Help

<details>

<summary>FAQ</summary>

Q- What Minecraft versions will the mod be supporting?
A- I'll try to support the latest minecraft version.

Q- Are backports planned?
A- No backports are planned, current backports were a one time thing.

Q- What other mods/dependencies do I need?
A- No dependencies are required.

Q- Will there be a forge backports for 1.19.x 1.20.x?
A- Not planned.

Q- XYZ mod crashes, or generates incorrectly with Fast Noise?
A- Report the issue on codeberg or my socials.

</details>

Incompatible mods

Moonrise is incompatible, as It changes minecraft internals drastically
Noisium is incompatible, as Fast Noise is intended as a replacement for noisium.
Anti-Xray is incompatible for now, as it needs to put extra data in minecraft block storage, which breaks fastnoise

Credits

  • Stevenplays, for developing noisium mod, I started developing fast noise while trying to port noisium to latest minecraft.
  • Ishland, for helping with mod, and modern-yarn and neo-loom

Reverie Projects

Consider joining the Reverie Projects for sneak peeks and updates on development! By joining, you can:

  • Get installation help and technical support for alot of awesome projects
  • Get the latest updates about development
  • Talk with and collaborate with our team
  • And just hang out with the rest of our community!

Keep Android Open | Contact Regulators to stop Google's lockdown of Android

Fast Noise is a modern optimization mod to improve world generation times. I regularly update the mod to latest minecraft versions, bring improvements to the mod, and provide stable releases.

Does the mod change world generation? The mod maintains vanilla parity, including with any datapacks. Do keep in mind, Vanilla non-determinism.

Can I use custom worldgen mods with this? Yes, I try my best to maintain mod compatibility, and only modify safe code. Specific optimizations that may affect mod compatibility are disabled by default.

FastNoise is part of Reverie Projects, check out our other mods as well.

Available on codeberg Available on curseforge Available on modrinth Support me on Ko-Fi

How does this mod work?

Fast noise optimizes storing block and biome data into chunks for the duration of worldgen.

Technical Details

Fast noise replaces populateNoise,populateBiomes in NoiseChunkGenerator and surfaceBuilder in SurfaceBuilder.

Fast noise optimizes world generation by making several strong assumptions about how world generation works. By replacing vanilla's generic and debug code for world storage with faster, more packed calculations, fast noise achieves faster throughput.

Some key methods used to achieve that are, reducing allocations, avoiding palette resizing, delaying/packing block counting, precalculating data, caching block state information and more.

How fast is it?

About 10-18% improvement to overall worldgen in overworld in 1.21.11 on latest versions.
Much higher improvement in nether, end
Here is a Jmh Benchmark Software.

Chunky benchmark

12 threads w/ mod

[12:39:32] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 16641 chunks (100.00%), Total time: 0:01:37

W/o mod

[12:43:08] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 16641 chunks (100.00%), Total time: 0:01:47

4 threads w/ mod

[12:56:23] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 9409 chunks (100.00%), Total time: 0:01:10

W/o mod

[13:01:11] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 9409 chunks (100.00%), Total time: 0:01:23

With higher distance W/o mod

[13:11:01] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 19881 chunks (100.00%), Total time: 0:02:43

W/ mod

[13:16:03] [Server thread/INFO]: [Chunky] Task finished for minecraft:overworld. Processed: 19881 chunks (100.00%), Total time: 0:02:21
Jmh benchmark
Mods used: FastNoise 1.0.37+26.2 on 26.2
ChunkPos: -16,-16 -> 16,16
End ChunkPos: 112,112 -> 144,144
Chunks: 1089
Mods used: c2me-fabric-mc26.2-0.4.2-alpha.0.9.jar

Benchmark                 (worldName)  Mode  Cnt      Score     Error  Units
BiomesBenchmark.biomegen    overworld  avgt    5   3058.005 ± 256.587  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    188.188 ±   3.156  ms/op
BiomesBenchmark.biomegen          end  avgt    5     31.560 ±   4.200  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  12332.480 ± 364.223  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   2447.385 ±  20.773  ms/op
NoiseBenchmark.noisegen           end  avgt    5   6420.598 ± 195.649  ms/op
SurfaceBenchmark.surface    overworld  avgt    5  14948.653 ± 333.900  ms/op
SurfaceBenchmark.surface       nether  avgt    5   9330.611 ± 243.701  ms/op
SurfaceBenchmark.surface          end  avgt    5   3485.872 ±   8.225  ms/op

Benchmark                 (worldName)  Mode  Cnt      Score     Error  Units
BiomesBenchmark.biomegen    overworld  avgt    5   2980.699 ±  98.824  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    177.827 ±   2.815  ms/op
BiomesBenchmark.biomegen          end  avgt    5     14.990 ±   0.575  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5   9419.623 ± 317.746  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1253.599 ±  15.977  ms/op
NoiseBenchmark.noisegen           end  avgt    5   5424.879 ±  81.860  ms/op
SurfaceBenchmark.surface    overworld  avgt    5  10490.488 ± 901.258  ms/op
SurfaceBenchmark.surface       nether  avgt    5   3361.448 ±  53.809  ms/op
SurfaceBenchmark.surface          end  avgt    5      1.723 ±   0.289  ms/op

Speedup:

Stage/Dimension Overworld Nether The End
Biome 1.025x 1.058x 2.105x
Noise 1.309x 1.952x 1.183x
Surface 1.424x 2.775x 2023.14x
Old Jmh Benchmark
Mods used: Fast Noise 1.0.15+26.1 on 26.1 snapshot-6
ChunkPos: -16,-16 -> 16,16
End ChunkPos: 112,112 -> 144,144
Chunks: 1089
Mods used: (c2me)

With mod:
Benchmark                 (worldName)  Mode  Cnt     Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5    11.786 ±  0.168  ms/op
BiomesBenchmark.biomegen       nether  avgt    5   174.833 ±  1.166  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5  2401.797 ± 31.629  ms/op
NoiseBenchmark.noisegen           end  avgt    5  3052.242 ± 12.358  ms/op
NoiseBenchmark.noisegen        nether  avgt    5  1039.086 ±  6.467  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  8441.811 ± 41.396  ms/op

With only c2me:
Benchmark                 (worldName)  Mode  Cnt      Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5     26.058 ±  0.245  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    185.957 ±  2.203  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5   2464.937 ± 29.007  ms/op
NoiseBenchmark.noisegen           end  avgt    5   3925.059 ± 14.292  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1920.705 ±  9.864  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  11552.674 ± 54.112  ms/op

Vanilla:
Benchmark                 (worldName)  Mode  Cnt      Score    Error  Units
BiomesBenchmark.biomegen          end  avgt    5     27.051 ±  0.118  ms/op
BiomesBenchmark.biomegen       nether  avgt    5    239.634 ±  1.702  ms/op
BiomesBenchmark.biomegen    overworld  avgt    5   4589.322 ± 80.331  ms/op
NoiseBenchmark.noisegen           end  avgt    5   4477.113 ± 36.133  ms/op
NoiseBenchmark.noisegen        nether  avgt    5   1951.438 ±  5.748  ms/op
NoiseBenchmark.noisegen     overworld  avgt    5  14249.612 ± 57.388  ms/op

Vanilla:
Benchmark                 (worldName)  Mode  Cnt     Score    Error  Units
SurfaceBenchmark.surface    overworld  avgt    5  5982.828 ± 17.992  ms/op
SurfaceBenchmark.surface       nether  avgt    5  2677.115 ±  9.293  ms/op
SurfaceBenchmark.surface          end  avgt    5   924.604 ±  5.376  ms/op

With Mod:
Benchmark                 (worldName)  Mode  Cnt     Score     Error  Units
SurfaceBenchmark.surface    overworld  avgt    5  4820.672 ±  24.669  ms/op
SurfaceBenchmark.surface       nether  avgt    5  1914.289 ± 644.099  ms/op
SurfaceBenchmark.surface          end  avgt    5     0.014 ±   0.003  ms/op

Speedup
Overworld: Biome: 1.026x Noise: 1.368x Surface: 1.241x
Nether: Biome: 1.063x Noise: 1.847x Surface: 1.398x
End: Biome: 2.21x Noise: 1.285x Surface: 66357x

The benchmarks may have some inaccuracies.

Socials

Chat with us on discord Chat with me on mastodon Chat with us on Gitter

FAQ and Help

FAQ

Q- What Minecraft versions will the mod be supporting?
A- I'll try to support the latest minecraft version.

Q- Are backports planned?
A- No backports are planned, current backports were a one time thing.

Q- What other mods/dependencies do I need?
A- No dependencies are required.

Q- Will there be a forge backports for 1.19.x 1.20.x?
A- Not planned.

Q- XYZ mod crashes, or generates incorrectly with Fast Noise?
A- Report the issue on codeberg or my socials.

Incompatible mods

Moonrise is incompatible, as It changes minecraft internals drastically
Noisium is incompatible, as Fast Noise is intended as a replacement for noisium.
Anti-Xray is incompatible for now, as it needs to put extra data in minecraft block storage, which breaks fastnoise

Credits

  • Stevenplays, for developing noisium mod, I started developing fast noise while trying to port noisium to latest minecraft.
  • Ishland, for helping with mod, and modern-yarn and neo-loom

Reverie Projects

Consider joining the Reverie Projects for sneak peeks and updates on development! By joining, you can:

  • Get installation help and technical support for alot of awesome projects
  • Get the latest updates about development
  • Talk with and collaborate with our team
  • And just hang out with the rest of our community!

Screenshots

Gallery

  • Just Some random terrain
    Just Some random terrain An example terrain generated with this mod
  • Icon image
    Icon image
  • Just me testing a new mod version
    Just me testing a new mod version
  • Initial version of mod icon
    Initial version of mod icon
  • Async-profiler results
    Async-profiler results Software I use to profile worldgen performance

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
2
In stacks

By the numbers

Statistics

7.4m
Total Downloads
CurseForge
2.9m
Modrinth
4.4m
Last Updated
CurseForge
Modrinth
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works