Concurrent Chunk Management Engine
No reviews yet
A Fabric mod designed to improve the chunk performance of Minecraft.
Neoforge is a fork of the Minecraft Forge available for versions 1.20.1+ of Minecraft. Many Forge mods are compatible with Neoforge and vice versa.
Fabric is a mod loader for versions 1.14+ of Minecraft, particularly popular for client side and optimization mods.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
Compatibility
Supported Environments
About
Project Details
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.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
About
Description
Concurrent Chunk Management Engine
A Fabric/NeoForge mod designed to improve the chunk performance of Minecraft.
Please enable "Show alpha files" to show all available versions
Looking for experimental hardware-accelerated world generation as well?
Benchmarks for 1.21.10 w/ Terralith (Nov 21, 2025)
| 2t-80t | 1t-16t |
|---|---|
![]() |
![]() |
So what is C2ME?
C^2M-Engine, or C2ME for short, is a Fabric/NeoForge mod designed to improve the performance of chunk generation, I/O, and loading. This is done by taking advantage of multiple CPU cores in parallel. For the best performance it is recommended to use C2ME with Lithium and ScalableLux.
What does C2ME stand for?
Concurrent chunk management engine, it's about making the game better threaded and more scalable in regard to world gen and chunk io performance.
Vanilla parity
C2ME does not sacrifice vanilla functionality or behavior, or alter the vanilla world generation in the name of raw speed by default. However, due to the non-determinism of vanilla world generation, worlds will vary significantly run-to-run even with the same seed. This is not a bug on our side.
While we carefully check that we do not modify any vanilla behavior, bugs are unavoidable after all. So, if you do encounter an issue where C2ME deviates from the intended vanilla behavior, don't hesitate to open an issue.
Mod and Datapack compatibility
World generation datapacks that can run on vanilla Minecraft are fully supported.
Custom world generators implemented in mods usually runs well, but may cause compatibility issues due to certain design assumption used by mod authors being broken for further speedups of world generation.
As a world generation mod author, if you find your mod broken, don't hesitate to look for help in our discord server (linked below). We are willing to help mod authors to embrace scalable world generation.
Undefined behavior sanitization
C2ME includes CheckedThreadLocalRandom for world random (included in UWRAD) plus a few others. These detections exist to prevent mods from screwing up Minecraft internals and causing undebuggable problems.
The detection should almost never produce false positives, and should be taken seriously and reported to corresponding mod authors instead.
Usage notice
Backup your worlds and practice good game modding skills.
Support status for Minecraft versions
Only the latest Minecraft release and the latest Minecraft snapshot are fully supported. Older Minecraft releases are in long-term support and will receive critical bug fixes. Older Minecraft snapshots are not supported.
Support
Our issue tracker: Fabric NeoForge
Our discord server: link
More information
Check out the README.md here: https://github.com/RelativityMC/C2ME-fabric
Footnotes
https://gist.github.com/ishland/6eb0dd0af4216ffffd340ea994dc5796
Previous benchmarks
Due to markdown limitation on CurseForge (not having spoilers), see our Modrinth page for previous benchmarks.
Please DO NOT look for support or post errors in the comment section. Use our issue tracker for help and feature requests.
Concurrent Chunk Management Engine (Fabric)
A Fabric mod designed to improve the chunk performance of Minecraft.
Looking for NeoForge versions?
Looking for experimental hardware-accelerated world generation as well?
Benchmarks for 1.21.10 w/ Terralith (Nov 21, 2025)
| 2t-80t | 1t-16t |
|---|---|
![]() |
![]() |
So what is C2ME?
C^2M-Engine, or C2ME for short, is a Fabric mod designed to improve the performance of chunk generation, I/O, and loading. This is done by taking advantage of multiple CPU cores in parallel. For the best performance it is recommended to use C2ME with Lithium and ScalableLux.
What does C2ME stand for?
Concurrent chunk management engine, it's about making the game better threaded and more scalable in regard to world gen and chunk io performance.
Vanilla parity
C2ME does not sacrifice vanilla functionality or behavior, or alter the vanilla world generation in the name of raw speed by default. However, due to the non-determinism of vanilla world generation, worlds will vary significantly run-to-run even with the same seed. This is not a bug on our side.
While we carefully check that we do not modify any vanilla behavior, bugs are unavoidable after all. So, if you do encounter an issue where C2ME deviates from the intended vanilla behavior, don't hesitate to open an issue.
Mod and Datapack compatibility
World generation datapacks that can run on vanilla Minecraft are fully supported.
Custom world generators implemented in mods usually runs well, but may cause compatibility issues due to certain
design assumption used by mod authors being broken for further speedups of world generation.
As a world generation mod author, if you find your mod broken, don't hesitate to look for help in our discord server (linked below).
We are willing to help mod authors to embrace scalable world generation.
Undefined behavior sanitization
C2ME includes CheckedThreadLocalRandom for world random (included in UWRAD) plus a few others.
These detections exist to prevent mods from screwing up Minecraft internals and causing undebuggable problems.
The detection should almost never produce false positives, and should be taken seriously and reported
to corresponding mod authors instead.
Usage notice
Backup your worlds and practice good game modding skills.
Support status for Minecraft versions
Only the latest Minecraft release and the latest Minecraft snapshot are fully supported. Older Minecraft releases are in long-term support and will receive critical bug fixes. Older Minecraft snapshots are not supported.
Support
Our issue tracker: link
Our discord server: link
More information
Check out the README.md here: https://github.com/RelativityMC/C2ME-fabric
Previous benchmarks
Benchmarks for 1.21.3 (Nov 24, 2024)
| 2t-80t | 1t-10t |
|---|---|
![]() |
![]() |
Footnotes: https://gist.github.com/ishland/9601a033afad4be5b17ffaed859577fd
Footnotes
Footnotes for benchmarks
Benchmark setup
All benchmark done with dual-socket Intel(R) Xeon(R) Gold 5218R limited to 2GHz max, on Debian 13.
openjdk version "25.0.1" 2025-10-21 LTS
OpenJDK Runtime Environment Zulu25.30+17-CA (build 25.0.1+8-LTS)
OpenJDK 64-Bit Server VM Zulu25.30+17-CA (build 25.0.1+8-LTS, mixed mode)
Datapack used: Terralith_1.21.5_v2.5.13.zip
https://modrinth.com/datapack/terralith/version/RFNry3l0
C2ME benchmark
Fabric mods used for C2ME benchmark:
c2me-fabric-mc1.21.10-0.3.5.1.0.jar
Chunky-Fabric-1.4.51.jar
fabric-api-0.138.3+1.21.10.jar
lithium-fabric-0.20.1+mc1.21.10.jar
ScalableLux-0.1.6+fabric.c25518a-all.jar
spark-1.10.152-fabric.jar
vmp-fabric-mc1.21.10-0.2.0+beta.7.217-all.jar
Changed settings (c2me.toml):
globalExecutorParallelismset to thread count
Paper benchmark
Paper used: paper-1.21.10-113.jar
Paper plugin used: Chunky-Bukkit-1.4.40.jar
Changed settings (paper-global.yml):
worker-pool.io-threads = 4worker-pool.worker-threadsset to thread count
Vanilla benchmark
Fabric mods used for vanilla benchmark:
Chunky-Fabric-1.4.51.jar
fabric-api-0.138.3+1.21.10.jar
spark-1.10.152-fabric.jar
Extra JVM flags: -Dmax.bg.threads= set to thread count
All benchmarks are run on tmpfs, on overworld, with world folder emptied before each JVM execution.
Seed: 114862964781274189
force-load-existing-chunks is turned on in Chunky config.
2-80 threads benchmark
JVM flags: -Xmx32G -Xms32G -Xss4m -Xshare:off -XX:+DisableExplicitGC -XX:+UseNUMA -XX:+UseZGC -XX:-ZUncommit -XX:+UseLargePages -XX:+UseTransparentHugePages -XX:+UnlockExperimentalVMOptions -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -Dchunky.maxWorkingCount=256
For vanilla tests only: -Xmx64G -Xms64G is used to avoid crashes during benchmark
Warmup phase: 2048 block radius with 0 0 as center (data discarded)
Measurement phase: 4096 block radius with 1000000 1000000 as center (263169 chunks in total)
| Thread count | C2ME cps | Paper cps | Vanilla cps |
|---|---|---|---|
| 2 | 22.62 | 17.37 | 10.63 |
| 4 | 45.02 | 34.17 | 12.67 |
| 6 | 69.42 | 50.87 | 13.64 |
| 8 | 89.94 | 63.14 | 13.26 |
| 10 | 115.53 | 72.66 | 14.25 |
| 12 | 135.93 | 78.63 | 14.58 |
| 14 | 159.01 | 82.09 | 14.57 |
| 16 | 182.38 | 84.76 | 14.22 |
| 18 | 208.45 | 88.94 | |
| 20 | 230.04 | 89.91 | |
| 22 | 252.08 | 87.66 | |
| 24 | 274.85 | 88.82 | |
| 26 | 297.70 | 88.43 | |
| 28 | 317.26 | 86.31 | |
| 30 | 334.40 | 87.69 | |
| 32 | 358.87 | 85.06 | |
| 34 | 377.21 | 87.52 | |
| 36 | 392.01 | 87.40 | |
| 38 | 407.59 | 85.14 | |
| 40 | 415.31 | 84.62 | |
| 42 | 423.33 | 86.06 | |
| 44 | 425.38 | 85.56 | |
| 46 | 424.47 | 86.28 | |
| 48 | 438.13 | 85.03 | |
| 50 | 440.57 | 85.31 | |
| 52 | 441.81 | 86.43 | |
| 54 | 444.29 | 83.81 | |
| 56 | 446.81 | 84.13 | |
| 58 | 444.29 | 85.03 | |
| 60 | 449.86 | 83.81 | |
| 62 | 453.48 | 85.50 | |
| 64 | 451.40 | 84.89 | |
| 66 | 454.26 | 83.60 | |
| 68 | 454.26 | 84.21 | |
| 70 | 457.16 | 83.89 | |
| 72 | 456.36 | 83.47 | |
| 74 | 460.09 | 84.70 | |
| 76 | 455.05 | 83.31 | |
| 78 | 459.82 | 83.39 | |
| 80 | 460.35 | 81.43 | 14.58 |
1-16 threads benchmark
JVM flags: -Xmx16G -Xms16G -Xss4m -Xshare:off -XX:+DisableExplicitGC -XX:+UseNUMA -XX:+UseZGC -XX:-ZUncommit -XX:+UseLargePages -XX:+UseTransparentHugePages -XX:+UnlockExperimentalVMOptions -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -Dchunky.maxWorkingCount=256
Warmup phase: 1024 block radius with 0 0 as center (data discarded)
Measurement phase: 2048 block radius with 1000000 1000000 as center (66049 chunks in total)
| Thread count | C2ME cps | Paper cps | Vanilla cps |
|---|---|---|---|
| 1 | 11.62 | 8.05 | 7.37 |
| 2 | 22.65 | 16.19 | 10.01 |
| 3 | 33.46 | 24.45 | 11.46 |
| 4 | 44.95 | 32.52 | 12.05 |
| 5 | 56.94 | 40.65 | 12.41 |
| 6 | 68.55 | 48.32 | 12.61 |
| 7 | 79.82 | 54.95 | 12.83 |
| 8 | 91.57 | 60.15 | 12.83 |
| 9 | 104.76 | 63.88 | 13.08 |
| 10 | 114.42 | 68.66 | 13.53 |
| 11 | 126.83 | 70.72 | 13.01 |
| 12 | 138.73 | 72.34 | 13.39 |
| 13 | 148.35 | 75.57 | 13.58 |
| 14 | 162.25 | 76.01 | 13.34 |
| 15 | 172.34 | 76.27 | 13.56 |
| 16 | 183.78 | 77.43 | 13.72 |
Screenshots
Gallery
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
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers




