প্রকল্প সম্পর্কে
hyperchunk হলো Minecraft Java Edition (ভার্সন 26.2) ওভারওয়ার্ল্ড জেনারেশন পাইপলাইনের একটি উচ্চ-পারফরম্যান্স পুনঃবাস্তবায়ন। এটি C11-এ লেখা এবং শুধুমাত্র libc-এর ওপর নির্ভরশীল, যা ভ্যানিলা নয়েজ, সারফেস রুলস, কার্ভারস, ফিচারস এবং লাইটিংকে বিট-একজ্যাক্ট প্যারিটির সাথে পুনরুৎপাদন করে।
মূল কারিগরি বৈশিষ্ট্যগুলোর মধ্যে রয়েছে:
- পারফরম্যান্স: বেঞ্চমার্ক নির্দেশ করে যে নির্দিষ্ট হার্ডওয়্যারে (AMD EPYC Zen5) এটি ভ্যানিলা ডেডিকেটেড সার্ভারের চেয়ে ১৩.৩ গুণ এবং C2ME-এর চেয়ে ৩.৭৭ গুণ দ্রুত জেনারেশন গতি প্রদান করে।
- আর্কিটেকচার: এটি একটি arena allocator, SoA (Structure of Arrays) ব্লক স্টোরেজ এবং AVX2 ও AVX-512 ব্যাকএন্ডসহ একটি ফ্ল্যাটেনড ডেনসিটি ফাংশন IR ব্যবহার করে।
- ডিটারমিনিজম: এটি একাধিক থ্রেডের মাধ্যমে ক্যানোনিকাল-আইডেন্টিকাল আউটপুট নিশ্চিত করে, যা ভ্যানিলা এবং C2ME-তে দেখা শিডিউলার-নির্ভর ডেকোরেশন অর্ডার সমস্যাগুলো এড়িয়ে চলে।
- ডিজাইন সীমাবদ্ধতা: বিট-একজ্যাক্ট প্যারিটি বজায় রাখতে এটি কঠোরভাবে FMA (Fused Multiply-Add) কন্ট্রাকশন নিষিদ্ধ করে এবং ওভারহেড কমাতে একটি রিজিয়ন-গ্র্যানুলারিটি FFI বাউন্ডারি ব্যবহার করে।
প্রকল্পটি বর্তমানে শুধুমাত্র ওভারওয়ার্ল্ড সমর্থন করে। স্ট্রাকচারগুলো স্থাপন করা হলেও, জিগস-অ্যাসেম্বলি (jigsaw assembly) এখনও বাস্তবায়িত হয়নি। এটি একটি বিশুদ্ধ কম্পিউট লাইব্রেরি হিসেবে ডিজাইন করা হয়েছে, যা CLI, Java FFM (পরিকল্পিত), অথবা Rust FFI-এর মাধ্যমে ইন্টিগ্রেশনের জন্য উপযোগী।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.