Anacondy
No reviews yet
A low-level optimisation mod that allows Java to perform deeper optimisations throughout the game by giving it stronger guarantees about effective constants
Enhances game performance and optimizes resource usage.
Forge is a popular mod loader for versions 1.1+ of Minecraft.
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
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
Straighten those snakes!
Anacondy is an optimisation mod that rewrites accesses of effectively immutable fields in various parts of the game to use 'CONDY' (CONSTANT_Dynamic) instructions, allowing Java to more confidently perform constant folding optimisations.
In other words, Anacondy gives Java stronger guarantees that certain things never change after the game has started, allowing the Java runtime to better optimise everything that touches those things and to do it sooner, which improves performance.
Where will I see the benefits? What's the catch?
Those that have a slow CPU, using integrated graphics and/or are memory bandwidth constrained should see the most benefit from this mod.
This mod is still a work in progress so it doesn't optimise as deeply as it theoretically could. Performance and stability should improve overtime in future releases as I figure out how to constant fold more complicated cases in a somewhat generic fashion.
Nevertheless, over a thousand different code paths in the game are at least partially optimised with this mod, where ordinarily Java would either never optimise, or at least not be able to until the game has been running for long enough for it to be confident enough to try.
Unlike some other performance mods, I deliberately don't change any of the game's existing logic to achieve these optimisations, so mod compatibility should theoretically be pretty decent. That also means it should also be acceptable for use in speedruns where game accuracy is important (check with the moderators first, of course).
Versions and other loaders
The initial release is for Forge 1.21.11. I plan on supporting other versions and loaders once I've added more optimisations and cleaned up the internal workings. Let me know in the comments which version and loader you'd like me to port to first when the time comes.
Why the name?
It's a play on words of anaconda and condy - the latter of which is shorthand for the key Java runtime feature this mod uses to achieve its optimisations.
The snake-like name came to me while watching Indiana Jones recently and how the way snakes move are a somewhat good representation of the indirection this mod tries to fix… without this mod, lots of the game's code paths have to wind through different places left and right checking things just in case they might change (even though they never will), but with the mod it knows these things won't change and can take straighter, more direct routes.
Disclaimer
This is an early alpha version. A lot of the changes made to the game are done by hand to help improve mod compatibility and stability, however it lacks real-world testing. Please report any issues you find on the issue tracker.
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