NVK, sterownik Vulkan o otwartym kodzie źródłowym dla NVIDIA

Logo NVK_RGB

NVK to nowy sterownik Vulkan typu open source dla sprzętu graficznego NVIDIA

Collabora uruchomiła NVK, nowy sterownik open source dla Mesy, który implementuje API graficzne Vulkan dla kart graficznych NVIDIA. Sterownik jest pisany od podstaw przy użyciu oficjalnych plików nagłówkowych i otwartych modułów jądra wydanych przez firmę NVIDIA.

Opracowując nowy sterownik, W niektórych miejscach używane są podstawowe komponenty sterownika Nouveau OpenGL, ale ze względu na różnice w nazwach plików nagłówkowych NVIDIA i nazwach inżynierii wstecznej w Nouveau, ponowne użycie kodu jest trudne i w większości wymagało wielu przemyśleń i implementacji od zera.

Rozwój również trwają prace nad stworzeniem nowego sterownika Vulkan odniesienie do Mesy, którego kod można wypożyczyć przy tworzeniu innych kontrolerów.

Zawsze brakowało obsługi sprzętu NVIDIA w sterownikach open source. Sterowniki Nouveau istnieją, ale często brakuje im funkcji, mają błędy lub po prostu nie są kompatybilne z niektórymi kartami. Wynika to z kombinacji czynników. W przeciwieństwie do sterowników Intel i AMD, stos sterowników nouveau został opracowany z niewielką lub żadną oficjalną dokumentacją lub pomocą NVIDIA. Od czasu do czasu dostarczają tutaj małe rekwizyty. Historycznie skupiał się przede wszystkim na umożliwieniu nouveau na tyle, aby można było zainstalować dystrybucję Linuksa, uzyskać dostęp do przeglądarki internetowej i pobrać zastrzeżony stos sterowników.

W tym celu wspomina się, że podczas pracy sterownika NVK podjęto próbę uwzględnienia wszystkich dostępnych doświadczeń w rozwoju sterowników Vulkan, utrzymuj bazę kodu w optymalnym kształcie i minimalizuj przenoszenie kodu z innych sterowników Vulkan, robiąc to, co należy zrobić, aby zapewnić wysoką jakość, optymalną pracę.

Sterownik NVK jest rozwijany dopiero od kilku miesięcy, więc jego funkcjonalność jest ograniczona. Kontroler pomyślnie przechodzi 98% testów podczas uruchamiania 10% testów Vulkan CTS (Compatibility Test Suite).

Generalnie szkolenie kierowców szacuje się na 20-25% funkcjonalności kontrolerów ANV i RADV. Pod względem obsługi sprzętu sterownik jest obecnie ograniczony do kart w oparciu o mikroarchitektury Turinga i Ampère. Trwają prace nad poprawkami obsługującymi procesory graficzne Kepler, Maxwell i Pascal, ale nie są jeszcze gotowe.

Prawdopodobnie największym obszarem zmagań technicznych było właściwe wyprowadzanie sprzętu z przestrzeni jądra. Sprzęt NVIDIA opiera się na podpisanym oprogramowaniu układowym do wszystkiego, od wyświetlania, przez wykonywanie zadań, po zarządzanie energią. Bloby oprogramowania układowego dostarczone przez firmę NVIDIA w przeszłości były okrojonymi wersjami, które utworzyli wyłącznie dla sterowników typu open source.

W dłuższej perspektywie oczekuje się, że sterownik NVK dla kart graficznych NVIDIA osiągnie podobny poziom jakości i funkcjonalności jak sterownik RADV dla kart AMD. Gdy sterownik NVK jest gotowy, biblioteki współdzielone utworzone podczas jego opracowywania mogą zostać użyte do ulepszenia sterownika Nouveau OpenGL dla kart graficznych NVIDIA.

Jest to również rozważane możliwość użyj projektu Zink, aby zaimplementować sterownik OpenGL dla kart graficznych NVIDIA, które działają poprzez tłumaczenie wywołań API Vulkan.

Na dłuższą metę jest nadzieja, że ​​NVK będzie dla sprzętu NVIDII tym, czym RADV dla sprzętu AMD.

Na koniec dla zainteresowanych projektem wspomina się, że jest rozwijany przez zespół, który obejmuje Karola Herbsta (Nouveau developer w Red Hat), David Airly (opiekun DRM w Red Hat) i Jason Eksstrand (aktywny deweloper Mesy w Collabora).

Jeśli chodzi o kod kontrolera, powinieneś o tym wiedzieć Jest to oprogramowanie typu open source na licencji MIT. Sterownik obsługuje wyłącznie procesory graficzne oparte na mikroarchitekturach Turing i Ampere wydane od września 2018 r. Jeśli chcesz dowiedzieć się więcej na ten temat, zapoznaj się ze szczegółami W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.