HeadlinesBriefing favicon HeadlinesBriefing.com

एक महीने में M4 Mac GPU ड्राइवर

Hacker News •
×

Niklas और मैंने लगभग एक महीने में M4 Mac Mini और MacBook Neo के लिए पूरी तरह से OpenGL ES 3.0 अनुरूप GPU ड्राइवर बनाया, जो आमतौर पर सालों लेता है। यह ड्राइवर Chrome और Firefox को WebGL के साथ और Minecraft को 200fps पर चलाता है। इसमें AGX GPU के फर्मवेयर ABI और यूजर-स्पेस घटकों को क्लीन रूम तरीके से रिवर्स इंजीनियर करना शामिल था।

पहले, मैंने macOS को रिवर्स इंजीनियर करने के लिए एक हाइपरवाइज़र बनाया था। हमारा लक्ष्य अनुरूप OpenGL (और जल्द ही Vulkan) ड्राइवरों को लागू करना था। हमने M4, A18 Pro, और M5 यूजर स्पेस को रिवर्स इंजीनियर किया, एक कस्टम IR/शेडर कंपाइलर, कमांड स्ट्रीम बिल्डर, और एक पूर्ण Linux कर्नेल ड्राइवर बनाया। हमने केवल हार्डवेयर ट्रेस और अपने स्वयं के शेडर का उपयोग किया, Apple ब्लॉब्स को अपारदर्शी मानते हुए।

कर्नेल ड्राइवर RTKit चलाने वाले GPU फर्मवेयर से बात करता है, सीधे हार्डवेयर से नहीं। फर्मवेयर ABI सबसे कष्टप्रद हिस्सा था, जिसमें साझा स्ट्रक्चर फर्मवेयर और होस्ट फ़ील्ड्स को इंटरलीव करते थे। Asahi Lina ने M1/M2 के लिए इसे कठिन 12-घंटे के दिनों में समझा।

कोड अंतिम उपयोगकर्ताओं के लिए तैयार नहीं है, लेकिन हमारा लक्ष्य इसे जल्द ही उन तक पहुंचाना है।

मुख्य संस्थाएँ: कंपनियाँ: Apple | लोग: Cody Ho, Niklas, Asahi Lina