NVK, un driver Vulkan open source pentru NVIDIA

NVK-Logo_RGB

NVK este un nou driver Vulkan open source pentru hardware-ul grafic NVIDIA

Collabora a lansat NVK, un nou driver open source pentru Mesa care implementează API-ul grafic Vulkan pentru plăcile grafice NVIDIA. Driverul este scris de la zero folosind fișiere de antet oficiale și module de nucleu deschise lansate de NVIDIA.

Când dezvoltați un driver nou, Componentele de bază ale driverului Nouveau OpenGL sunt folosite în unele locuri, dar din cauza diferențelor dintre numele fișierelor antet NVIDIA și numele de inginerie inversă în Nouveau, reutilizarea codului este dificilă și, în cea mai mare parte, a necesitat multă regândire și implementare de la zero.

Dezvoltarea de asemenea este în desfășurare în vederea creării unui nou driver Vulkan referință pentru Mesa, al cărui cod poate fi împrumutat la crearea altor controlere.

Suportul pentru hardware-ul NVIDIA în driverele open source a lipsit întotdeauna puțin. Driverele Nouveau există, dar adesea le lipsesc funcții, au erori sau pur și simplu nu sunt compatibile cu anumite carduri. Acest lucru se datorează unei combinații de factori. Spre deosebire de driverele Intel și AMD, stiva de drivere nouveau a fost dezvoltată fără documentație oficială sau ajutor de la NVIDIA. Ocazional, oferă recuzită mici aici. Din punct de vedere istoric, s-a concentrat în primul rând pe activarea nouveauului suficient pentru a vă putea instala distribuția Linux, a accesa un browser web și a descărca pachetul de drivere proprietar.

Pentru a face acest lucru, se menționează că în timpul lucrului șoferului NVK, s-a încercat să se ia în considerare toată experiența disponibilă în dezvoltarea driverelor Vulkan, păstrați baza de cod în formă optimă și minimizați transferul de cod de la alte drivere Vulkan, făcând ceea ce ar trebui făcut pentru o muncă optimă și de înaltă calitate.

Driverul NVK a fost în dezvoltare doar de câteva luni, așa că funcționalitatea sa este limitată. Controlerul trece cu succes 98% din teste când rulați 10% din testele Vulkan CTS (Compatibility Test Suite).

În general, pregătirea șoferilor este estimată la 20-25% din funcționalitatea controlerelor ANV și RADV. În ceea ce privește suportul hardware, driverul este în prezent limitat la carduri bazate pe microarhitecturi Turing și Ampère. Patch-urile pentru suportul GPU-urilor Kepler, Maxwell și Pascal sunt în lucru, dar nu sunt încă gata.

Probabil cea mai mare zonă de luptă tehnică a fost conducerea corectă a hardware-ului din spațiul kernelului. Hardware-ul NVIDIA se bazează pe firmware semnat pentru orice, de la afișare la execuția lucrărilor și la gestionarea energiei. Bloburile de firmware pe care NVIDIA le-a furnizat în trecut erau versiuni reduse pe care le-au creat doar pentru driverele open source.

Termen lung, driverul NVK pentru plăcile grafice NVIDIA este de așteptat să atingă un nivel similar de calitate și funcționalitate ca și driverul RADV pentru carduri AMD. Odată ce driverul NVK este gata, bibliotecile partajate create în timpul dezvoltării sale pot fi folosite pentru a îmbunătăți driverul Nouveau OpenGL pentru plăcile video NVIDIA.

De asemenea, este luat în considerare posibilitatea de utilizați proiectul Zink pentru a implementa un driver OpenGL pentru plăcile video NVIDIA care funcționează prin traducerea apelurilor Vulkan API.

Pe termen lung, speranța este că NVK va fi pentru hardware-ul NVIDIA ceea ce RADV este pentru hardware-ul AMD.

În fine, pentru cei interesați de proiect, se menționează că este dezvoltat de o echipă care include Karol Herbst (Dezvoltator nou la Red Hat), david airlie (menținătorul DRM la Red Hat) și Jason Ekstrand (dezvoltator activ al Mesa în Collabora).

În ceea ce privește codul controlerului, ar trebui să știți asta Este open source sub licența MIT. Driverul acceptă doar GPU-uri bazate pe microarhitecturile Turing și Ampere lansate din septembrie 2018. Dacă doriți să aflați mai multe despre el, puteți consulta detaliile În următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: AB Internet Networks 2008 SL
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.