À propos du projet

hyperchunk est une réimplémentation haute performance du pipeline de génération du monde extérieur de Minecraft Java Edition (version 26.2). Écrite en C11 avec une dépendance uniquement sur libc, elle reproduit le bruit, les règles de surface, les creuseurs, les caractéristiques et l'éclairage de la version vanilla avec une parité bit à bit. Caractéristiques techniques clés : - Performance : Les benchmarks indiquent des vitesses de génération jusqu'à 13,3 fois plus rapides que le serveur dédié vanilla et 3,77 fois plus rapides que C2ME sur un matériel spécifique (AMD EPYC Zen5). - Architecture : Utilise un allocateur d'arène, un stockage de blocs en SoA (Structure of Arrays) et une IR de fonction de densité aplatie avec des backends AVX2 et AVX-512. - Déterminisme : Garantit une sortie identique canonique sur plusieurs threads, évitant les problèmes d'ordre de décoration dépendant du planificateur présents dans vanilla et C2ME. - Contraintes de conception : Interdit strictement la contraction FMA (Fused Multiply-Add) afin de maintenir la parité bit à bit et utilise une frontière FFI à granularité de région pour minimiser la surcharge. Le projet prend actuellement en charge uniquement le monde extérieur. Bien que les structures soient placées, l'assemblage jigsaw n'est pas encore implémenté. Conçu comme une bibliothèque de calcul pure, il est viable pour une intégration via CLI, Java FFM (prévu) ou Rust FFI.