Linux yadrosi uchun NVIDIA ochiq manbali video drayverlari

NVIDIA o'zining xususiy video drayverlari to'plamiga kiritilgan barcha yadro modullari ochiq manba ekanligini e'lon qildi. Kod MIT va GPLv2 litsenziyalari ostida ochiq. Modullarni yaratish qobiliyati Linux yadrosi 86 va undan keyingi versiyalarga ega tizimlarda x64_64 va aarch3.10 arxitekturalari uchun taqdim etiladi. CUDA, OpenGL va Vulkan steklari kabi foydalanuvchi maydonida foydalaniladigan proshivka va kutubxonalar xususiy bo'lib qoladi.

Kodning nashr etilishi Linux tizimlarida NVIDIA GPU-lar bilan ishlash qulayligini sezilarli darajada yaxshilashga, operatsion tizim bilan integratsiyani kuchaytirishga, drayverlarni yetkazib berish va muammolarni bartaraf etishni soddalashtirishga olib kelishi kutilmoqda. Ubuntu va SUSE ishlab chiquvchilari allaqachon ochiq modullar asosida paketlar shakllanishini e'lon qilishgan. Ochiq modullarning mavjudligi, shuningdek, NVIDIA drayverlarini Linux yadrosining nostandart maxsus tuzilmalariga asoslangan tizimlar bilan integratsiyalashuvini soddalashtiradi. NVIDIA uchun ochiq manba Linux drayverlarining sifati va xavfsizligini hamjamiyat bilan yaqinroq hamkorlik qilish hamda o'zgarishlarni uchinchi tomon ko'rib chiqish va mustaqil audit orqali yaxshilashga yordam beradi.

Ta'kidlanishicha, taqdim etilgan ochiq kodlar bazasi bir vaqtning o'zida xususiy drayverlarni shakllantirishda qo'llaniladi, xususan, u bugungi kunda nashr etilgan 515.43.04 beta-bo'limida qo'llaniladi. Bunday holda, asosiysi yopiq ombor bo'lib, taklif qilingan ochiq kod bazasi ma'lum ishlov berish va tozalashdan so'ng har bir xususiy drayverlar uchun gips shaklida yangilanadi. Shaxsiy o'zgarishlar tarixi taqdim etilmaydi, faqat drayverning har bir versiyasi uchun umumiy majburiyat (hozirda 515.43.04 drayveri uchun modullar kodi nashr etilgan).

Biroq, jamoaga modul kodiga tuzatishlar va o'zgartirishlar kiritish uchun tortishish so'rovlarini yuborish imkoniyati beriladi, ammo bu o'zgarishlar umumiy omborda alohida o'zgarishlar sifatida aks ettirilmaydi, lekin birinchi navbatda asosiy shaxsiy omborga integratsiya qilinadi va faqat keyin ochish uchun qolgan o'zgarishlar bilan uzatiladi. Rivojlanishda ishtirok etish uchun NVIDIA ga o'tkazilgan kodga mulk huquqini o'tkazish to'g'risidagi shartnomani imzolashingiz kerak (Contributor License Agreement).

Yadro modullarining kodi ikki qismga bo'lingan: operatsion tizimga bog'lanmagan umumiy komponentlar va Linux yadrosi bilan o'zaro ta'sir qilish uchun qatlam. O'rnatish vaqtini qisqartirish uchun umumiy komponentlar hali ham NVIDIA-ning xususiy drayverlarida allaqachon yig'ilgan ikkilik fayl shaklida taqdim etiladi va qatlam joriy yadro versiyasi va mavjud sozlamalarni hisobga olgan holda har bir tizimda yig'iladi. Quyidagi yadro modullari taklif etiladi: nvidia.ko, nvidia-drm.ko (Direct Rendering Manager), nvidia-modeset.ko va nvidia-uvm.ko (Birlashtirilgan video xotira).

GeForce seriyali va ish stantsiyasining GPU qoʻllab-quvvatlashi alfa sifati sifatida keltirilgan, ammo maʼlumotlar markazi hisoblash tezlashtirish va parallel hisoblash (CUDA) arxitekturalarida ishlatiladigan NVIDIA Turing va NVIDIA Amper arxitekturalariga asoslangan maxsus GPU’lar toʻliq qoʻllab-quvvatlanadi va toʻliq sinovdan oʻtgan va ishlab chiqarishda foydalanish uchun mos keladi. loyihalar (ochiq manba allaqachon mulkiy drayverlarni almashtirishga tayyor). Kelgusi relizlar uchun ish stantsiyalari uchun GeForce va GPU qo'llab-quvvatlashini barqarorlashtirish rejalashtirilgan. Oxir oqibat, ochiq kodli bazaning barqarorlik darajasi xususiy haydovchilar darajasiga ko'tariladi.

Hozirgi ko'rinishida nashr etilgan modullarni asosiy yadroga kiritish mumkin emas, chunki ular yadro kodlash uslubi talablariga va arxitektura konventsiyalariga mos kelmaydi, ammo NVIDIA Canonical, Red Hat va SUSE bilan birgalikda ushbu muammoni hal qilish niyatida. drayverning dasturiy interfeyslarini barqarorlashtirish. Bundan tashqari, nashr etilgan kod yadroga kiritilgan ochiq manbali Nouveau drayverini yaxshilash uchun ishlatilishi mumkin, u xususiy haydovchi bilan bir xil GPU proshivkasini ishlatadi.

Manba: opennet.ru

a Izoh qo'shish