Anacondy

Quick rating

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

Performance & Optimization
Mod Loaders
Forge
Minecraft

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

About

Project Details

Type
Mod
Latest Version
Anacondy-0.3.0-alpha
Authors

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

Resources

External Links

Source Issues Wiki Discord

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

This project has no gallery images yet.

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
0
In stacks

By the numbers

Statistics

<1,000
Downloads
Last Updated
Created
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