Nvidia робить перший крок до відкритих драйверів графічного процесора Linux

Після багатьох натяків Nvidia вчора оголосила, що стане частиною драйвера графічного процесора Linux з відкритим кодом , як це робили Intel і AMD протягом багатьох років. Раніше користувачі Linux, які хотіли уникнути власного драйвера Nvidia, змушені були покладатися на програмне забезпечення зі зворотною інженерією, таке як проект Nouveau , який найкраще працював на старішому апаратному забезпеченні та пропонував у кращому випадку неповну підтримку всіх функцій GPU Nvidia.
«Цей випуск — важливий крок до покращення досвіду використання GPU NVIDIA в Linux, більш тісної інтеграції з ОС, а також можливості налагодження, інтеграції та сприяння розробникам», — йдеться в дописі в блозі, який приписується кільком співробітникам Nvidia . «Для постачальників дистрибутивів Linux модулі з відкритим кодом спрощують використання. Вони також покращують готовий інтерфейс користувача для підписання та розповсюдження драйверів NVIDIA GPU. Canonical і SUSE можуть негайно запакувати відкриті модулі ядра в дистрибутиви Ubuntu і SUSE Linux Enterprise».
Nvidia спеціально випускає драйвер ядра з відкритим вихідним кодом за подвійною ліцензією MIT/GPL і наразі не випускає частини драйвера, що містять простір користувача. Це включає драйвери для OpenGL, Vulkan, OpenCL і CUDA, які все ще є закритими, а також мікропрограму для GPU System Processor (GSP). Nvidia каже, що ці драйвери «залишатимуться закритими та будуть опубліковані з попередньо зібраними двійковими файлами», тому не схоже, що версії з відкритим вихідним кодом планується найближчим часом.
Nvidia все ще відстає від Intel і AMD, коли мова заходить про драйвери GPU з відкритим кодом — обидві компанії випускають ядро з відкритим кодом і драйвери простору користувача, а також прошивку із закритим кодом. Але це перший крок до паритету з відкритим кодом для пакетів драйверів Nvidia для Linux.
Драйвери Nvidia з відкритим кодом підтримують лише графічні процесори компанії на базі Turing і пізніші, включаючи серії GeForce GTX 1600, RTX 2000 і 3000, а також графічні процесори для робочих станцій Quadro на основі тієї ж архітектури. Власні драйвери компанії сягають архітектури Kepler 2012 року.
Драйвери з відкритим кодом також ще не будуть інтегровані в ядро Linux, оскільки, згідно з Phoronix , API, ABI та інтерфейс між драйвером ядра та інтерфейсом мікропрограми GSP ще не завершені. Це означає, що все, від мікропрограми до драйвера ядра та драйверів простору користувача, має мати версії для належної роботи (сьогоднішня версія R515.43.04). Після створення цих інтерфейсів драйвер можна буде передати в ядро, і різні версії мікропрограми, драйвери ядра та драйвери простору користувача повинні мати можливість взаємодіяти.
Nvidia каже, що підтримка графічних процесорів центру обробки даних у поточних драйверах «готова до виробництва» в цьому початковому випуску, але підтримка GeForce, Quadro та інших споживчих графічних процесорів здійснюється в «альфа-якості» — це не те програмне забезпечення, яке вам потрібно. поспішайте встановлювати, якщо не хочете скинути його шини на тестовій системі або додати код самостійно.
Гектор Мартін, один із розробників дистрибутива Asahi Linux, розкритикував Nvidia за переміщення багатьох функцій у їхню мікропрограму із закритим кодом, яку потім називає драйвер із відкритим кодом. Мартін називає драйвер з відкритим вихідним кодом «чистою перемогою з практичної точки зору», оскільки купа власного коду легше вписується в пісочницю. «Але люди, які піклуються про неї, не отримали свободи», — пише він. «[Приблизно] стільки ж закритого коду [як раніше].»
Залишити відповідь