Adrenaline

Adrenaline

Generation multithreading, but better

by
297 Downloads
forgeoptimizationutility
Rent Server with this Mod

Screenshots

Generation flow

About this Mod

Adrenaline

Adrenaline is a server-side (singleplayer compatible) performance mod for Minecraft 1.20.1 (Forge) that accelerates chunk generation by parallelizing work that vanilla runs on a single thread.


Vanilla chunk generation runs almost entirely on a single dedicated worldgen thread. Your other CPU cores sit idle while that one thread processes chunks one at a time. Adrenaline replaces the single-threaded worldgen mailbox with a concurrent job scheduler that runs multiple chunk generation tasks in parallel across all available cores, while still preserving correctness for stages that write across chunk boundaries.

Vanilla generation (slow) With Adrenaline (fast)


How it works

Chunk generation in vanilla goes through a series of stages (noise fill, surface placement, cave carving, feature decoration, etc.). Most of these stages write only to the chunk they are generating and are safe to run in parallel. The one exception is the FEATURES stage, which can write blocks into the immediate neighbors of the chunk being processed.

Adrenaline tracks a "footprint" for each chunk job — the set of chunk positions the job may write to. Before dispatching a job, the scheduler checks whether any position in its footprint is currently being written by another active job. If not, the job runs immediately on the thread pool. If there is a conflict, it waits. This gives maximum parallelism without ever letting two jobs race on the same chunk.

The scheduler uses a reverse wait index so that when a job finishes and frees its footprint, only the jobs actually blocked by those positions are rechecked — not the entire queue.

Additional optimizations included:

  • BIOMES and NOISE stages normally dispatch their inner work via CompletableFuture.supplyAsync to a ForkJoinPool, adding scheduling overhead. Adrenaline inlines that work directly since the outer job is already running on the thread pool.
  • LegacyRandomSource uses an AtomicLong internally, which causes unnecessary memory contention when many chunk jobs run concurrently. Adrenaline replaces it with a plain long for per-chunk random instances that are never shared between threads.
  • Block.isShapeFullBlock uses a shared Guava LoadingCache that becomes a contention point under parallel chunk gen. Adrenaline replaces it with a ThreadLocal cache per worker thread.
  • StructureTemplate.Palette uses a plain HashMap for its block cache. Adrenaline replaces it with a ConcurrentHashMap so concurrent reads during structure placement do not race.

Configuration

A config file is generated at config/adrenaline.json on first launch.

  • workerThreads — number of threads used for chunk generation. Defaults to 0, which uses all available logical processors.
  • stageBlacklist — list of chunk generation stage names to skip parallelization for, in case a mod has a conflicting stage.
  • featureBlacklist — list of feature registry names to exclude from parallel execution.

Compatibility

  • Server-side only. Clients do not need the mod installed.
  • Requires Forge 1.20.1.
  • Mods that add custom chunk generation stages or write to neighbor chunks outside of the FEATURES stage may need their stage added to stageBlacklist.
  • The world seed and chunk layout are identical to vanilla. Adrenaline does not change generation output, only the order and threading of how chunks are computed.
Boring stats
  • 0.0.1 - 120-140 cps / 2:07 spt

P. S. I am not responsible for corrupting your world lil bro

Available Versions

Adrenaline 0.0.3beta
MC 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
March 30, 2026
Adrenaline 0.0.2beta
MC 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
March 30, 2026
Adrenaline 0.0.1beta
MC 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6forge
March 27, 2026

How to Install Adrenaline on Your Server

1

Order Server

Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).

2

Set forge Loader

In the panel under "Egg", select the forge loader and matching Minecraft version (1.20.6).

3

Install Mod

Open the mod browser in the dashboard and search for "Adrenaline". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.

Compatibility

Mod Loaders

forge

Minecraft Versions

1.20.6, 1.20.5, 1.20.4 (+3 more)

Server-side

Required

Recommended RAM

4 GB(min. 3 GB)

Frequently Asked Questions

Adrenaline server crashes on startup – what to do?

Most common cause: wrong forge version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.20.6). You can switch loaders with one click in the panel.

Is Adrenaline compatible with forge?

Adrenaline officially supports forge for Minecraft 1.20.6, 1.20.5, 1.20.4. The Mado dashboard automatically detects incompatible loader combinations.

Server lagging with Adrenaline – how to optimize performance?

Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Adrenaline consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.

Rent Modded Server

Install Adrenaline with just one click on your server.

Recommended RAM
4 GBab €8/mo
Min. 3 GB | +1 GB pro 8 Spieler
Create Server Now
1-Click Mod Install
NVMe SSD Storage
DDoS Protection included

Details

License
LicenseRef-All-Rights-Reserved
Server-side
Required

Supported Versions

1.20.61.20.51.20.41.20.31.20.21.20.1