NVIDIA излезе, за да изясни съмненията относно използването на отворени модули на ядрото

NVIDIA драйвери за Linux

Наскоро споделихме тук в блога новината за промени, въведени от NVIDIA във версията на своите собствени драйвери "NVIDIA 560".

Предложени промени който ще се прилага от версията "NVIDIA 560", консистенция основно в това отворените модули на ядрото на Linux ще се използват по подразбиране на системи с графични процесори, базирани на микроархитектурата Turing (GeForce GTX 1600 и RTX 2000) и по-нови версии.

С тази промяна, отворените и частните модули не могат да се използват едновременно или да съществуват едновременно в една и съща файлова система. Това означава, че отворените модули могат да се използват само с GPU, които имат отделен микроконтролер GPU System Processor (GSP), като микроархитектурите Turing, Ampere и Ada. За по-стари GPU без GSP, като тези, базирани на микроархитектури Maxwell, Pascal и Volta, ще продължат да се използват собствени модули.

Предвид съмненията и много от спекулациите, породени след новината, Анди Ритгер, лидер в разработването на драйвери за операционни системи тип Unix в NVIDIA, излезе, за да отговори на различни въпроси свързани с прехода от собствени драйвери на NVIDIA към използване по подразбиране на отворени модули на ядрото на Linux.

Andy споменава, че възможностите на отворени и патентовани модули относно инициализацията на GPU и управлението на захранването Те ще бъдат доста подобни на драйверите на NVIDIA 560, с планове за постигане на пълен паритет в бъдеще. Споменава се, че версия 560 също ще адресира исторически проблеми в отворени модули, като тези, свързани с използването на VRR (променлива скорост на опресняване) на лаптопи.

В допълнение към това, cКогато беше засегната темата за поддръжка на отворени Nouveau и NVK контролери, представител на NVIDIA посочи това, за производствени приложения, на препоръката на компанията е да се използват патентовани драйвери и отворени модули на ядрото доставя се отделно. Въпреки че преди това компанията се опита да предостави документация и корекции за разработчиците на Nouveau и NVK, предоставената помощ се счита за скромна и не се квалифицира като пълна поддръжка.

Тъй като възможност за поддръжка на собствени компоненти на NVIDIA в отворения драйвер Nouveau, като CUDA, AI, RT/PT, DLSS и Optix, беше споменато, че в момента това не е възможно и че тези компоненти не работят с модула на ядрото Nouveau. Не е ясно дали това ще е възможно в бъдеще.

Важно е да се отбележи това Nouveau също не поддържа функции, свързани с конфигуриране и наблюдение (nvapi/nvidia-smi). Въпреки това, промяна в лицензирането на дефинициите на nvapi API позволи на проекти като Wine и Proton да разработят свои собствени реализации на някои nvapi елементи, използвани в игрите.

От друга страна, също беше разгледан въпросът за участието на служителите на NVIDIA в развитието на Нуво, беше споменато, че това участие в момента е ограничено, но някои служители те вече допринасят за развитието на Nouveau и участие в свързани дискусии.

Когато чудеха се за плановете на NVIDIA за отворени стекови компоненти на драйвери за графични процесори, които работят в потребителско пространство, служител на компанията отговори, че не е запознат с подобни планове.

От другите точки, които бяха разгледани, се споменава, че:

  • NVIDIA няма планове да настоява за включването на отворени модули в основното ядро ​​на Linux в момента.
  • NVIDIA няма планове да предоставя отворени модули на ядрото за GPU преди поколението Turing. Следователно потребителите на Volta и по-старите GPU трябва да продължат да използват собствените модули за оптимална производителност.
  • Решението да се използват публични модули по подразбиране се основава на желанието да се опрости тестването и да се намалят режийните разходи, свързани с необходимостта от повторно тестване на публични и частни модули.

И накрая, дn по отношение на равенството във функционалността между отворени и патентовани драйвери, представител на NVIDIA спомена това във версия 560 на контрольора, на модулите на ядрото с отворен код ще постигнат приблизително тази функционалност на патентованите модули. Въпреки това ограничението да не може да се използва RTD3 (Run Time D3) механизъм за динамично управление на мощността с отворени модули на ядрото в поколения преди Ampere беше подчертано.

Ако сте заинтересовани да научите повече за това, можете да проверите подробностите на следната връзка.