عن المشروع
hyperchunk هو إعادة تنفيذ عالية الأداء لخط أنابيب توليد overworld الخاص بإصدار Minecraft Java Edition (الإصدار 26.2). تم كتابته بلغة C11 ويعتمد فقط على libc، وهو يعيد إنتاج الضوضاء الافتراضية، وقواعد السطح، والنقاشات (carvers)، والميزات، والإضاءة بتطابق bit-exact.
الميزات التقنية الرئيسية تشمل:
- الأداء: تشير الاختبارات إلى أن سرعات التوليد تصل إلى 13.3x أسرع من الخادم المخصص الافتراضي و3.77x أسرع من C2ME على أجهزة محددة (AMD EPYC Zen5).
- الهندسة: يستخدم allocator من نوع arena، وتخزين كتل SoA (Structure of Arrays)، وIR وظيفة الكثافة المفلطحة مع خلفيات AVX2 وAVX-512.
- الحتمية: يضمن إخراجًا متطابقًا قياسيًا عبر عدة خيوط، متجنبًا مشكلات ترتيب الزخرفة المعتمدة على المجدول الموجودة في النسخة الافتراضية وC2ME.
- قيود التصميم: يحظر صراحةً اندماج FMA (Fused Multiply-Add) للحفاظ على تطابق bit-exact ويستخدم حد FFI بحبيبية المنطقة لتقليل overhead.
يدعم المشروع حاليًا overworld فقط. بينما يتم وضع الهياكل، لم يتم بعد تنفيذ تجميع jigsaw. تم تصميمه كمكتبة حسابية نقية، مما يجعله قابلاً للتكامل عبر CLI، أو Java FFM (المخطط)، أو Rust FFI.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.