Skip to content

EfficientHashing

better hashing algorithm for Vec3i & BlockPos

FabricNeoForgeForge
Loaders
FabricNeoForgeForge
Downloads on Modrinth
280K
Followers on Modrinth
15
versions
32
Updated
October 8, 2026Oct 8
Published
in 2025

At a glance

Runs on Fabric, NeoForge and Forge
For Minecraft 1.21–1.21.1, 26.1.2 …
Needed in the game and on the server
Latest version — 1.0.2 from October 8, 2026
License LGPL-3.0-only — free
Where it's needed
In gamerequiredOn serverrequired

Needed both in the game and on the server

Game versions1.18–1.20.1, 1.21–1.21.1, 26.1.2

EfficientHashing

EfficientHashing replaced hashing algorithm of Vec3i (and its subclasses like BlockPos) with one that's much much more collision resistant, providing performance improvement in basically wherever its hashcode is used.

Collision Resistant

We can prove this by doing a simple test. Test is perform by hashing every combination of BlockPos between new BlockPos(-100, -20, -100) and new BlockPos(100, 50, 100) (inclusive), with the total object count reaching 2,800,000+.

Vanilla algorithm produced 194,571 unique hashcode in total. This means that at least 93% of all BlockPos hashcode are colliding with each other.

And PhiMix, the algorithm used by EfficientHashing, produced 2868471 unique hashcode in total. This means that every unique BlockPos object gets its unique hashcode, and NONE of all BlockPos hashcode are colliding.

Unique HashcodeCollisionCollision Rate
Vanilla194,5712,673,90093.2%
EfficientHashing2,868,47100%

If you're curious about the actual test code, see: here

Performant

Benchmark time:

Benchmark                     Mode  Cnt   Score   Error  Units
VecHashingBenchmark.mixin    thrpt    5  47.012 ± 1.029  ops/s
VecHashingBenchmark.vanilla  thrpt    5  49.326 ± 1.507  ops/s

PhiMix is about 95.3% the performance of original hashing algorithm. Yes, it's slower, but this performance gap is relatively tiny compared to other hashing solution, and can be easily outweighed by the significant improvement in hash collision resistance.

If you're curious about the actual benchmark code, see: here

Vanilla compatible

In vanilla hashing algorithm, if you hash the "default" instance of BlockPos/Vec3i, aka new BlockPos(0, 0, 0), the produced hashcode will be 0, which happens to be the "default" instance of integer. This special behavior is also present in PhiMix, providing the best possible vanilla compatibility.

FAQ

How to install EfficientHashing?

Install Fabric for your Minecraft version, download EfficientHashing for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does EfficientHashing support?

EfficientHashing has builds for Minecraft 1.18–1.20.1, 1.21–1.21.1, 26.1.2.

Is EfficientHashing needed on the server?

Needed in the game and on the server

License and source
GNU Lesser General Public License v3.0 onlyfree to use and share; changes to the mod itself must be published under the same license
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More