NVK, un pilote Vulkan open source pour NVIDIA

Logo NVK_RGB

NVK est un nouveau pilote Vulkan open source pour le matériel graphique NVIDIA

Collabora a lancé NVK, un nouveau pilote open source pour Mesa qui implémente l'API graphique Vulkan pour les cartes graphiques NVIDIA. Le pilote est écrit à partir de zéro à l'aide de fichiers d'en-tête officiels et de modules de noyau ouverts publiés par NVIDIA.

Lors du développement d'un nouveau pilote, Nouveaux composants de base du pilote OpenGL sont utilisés à certains endroits, mais en raison des différences entre les noms de fichier d'en-tête NVIDIA et les noms de rétro-ingénierie dans Nouveau, la réutilisation du code est difficile et nécessite pour la plupart beaucoup de réflexion et de mise en œuvre à partir de zéro.

Le développement aussi est en cours en vue de créer un nouveau pilote Vulkan référence pour Mesa, dont le code peut être emprunté lors de la création d'autres contrôleurs.

La prise en charge du matériel NVIDIA dans les pilotes open source a toujours fait un peu défaut. De nouveaux pilotes existent, mais ils manquent souvent de fonctionnalités, ont des bogues ou ne sont tout simplement pas compatibles avec certaines cartes. Cela est dû à une combinaison de facteurs. Contrairement aux pilotes Intel et AMD, la nouvelle pile de pilotes a été développée avec peu ou pas de documentation officielle ou d'aide de NVIDIA. Ils fournissent parfois de petits accessoires ici. Historiquement, il s'est principalement concentré sur l'activation de nouveau suffisamment pour que vous puissiez installer votre distribution Linux, accéder à un navigateur Web et télécharger sa pile de pilotes propriétaire.

Pour ce faire, il est mentionné que lors du travail du pilote NVK, une tentative a été faite pour prendre en compte toute l'expérience disponible dans le développement des pilotes Vulkan, gardez la base de code dans une forme optimale et minimisez le transfert de code à partir d'autres pilotes Vulkan, en faisant ce qui doit être fait pour un travail optimal et de haute qualité.

Le pilote NVK n'est en développement que depuis quelques mois, donc sa fonctionnalité est limitée. Le controlle passe avec succès 98% des tests lors de l'exécution de 10 % des tests Vulkan CTS (Compatibility Test Suite).

En général, la formation des conducteurs est estimée à 20-25% de la fonctionnalité des contrôleurs ANV et RADV. En termes de support matériel, le pilote est actuellement limité aux cartes basé sur des microarchitectures Turing et Ampère. Des correctifs pour prendre en charge les GPU Kepler, Maxwell et Pascal sont en préparation, mais ne sont pas encore prêts.

Le plus grand domaine de lutte technique a probablement été la bonne conduite du matériel à partir de l'espace du noyau. Le matériel NVIDIA s'appuie sur un micrologiciel signé pour tout, de l'affichage à l'exécution des tâches en passant par la gestion de l'alimentation. Les blobs de micrologiciels fournis par NVIDIA dans le passé étaient des versions allégées qu'ils créaient uniquement pour les pilotes open source.

À long terme, le pilote NVK pour les cartes graphiques NVIDIA devrait atteindre un niveau de qualité et de fonctionnalité similaire à celui du pilote RADV pour les cartes AMD. Une fois que le pilote NVK est prêt, les bibliothèques partagées créées lors de son développement peuvent être utilisées pour améliorer le pilote Nouveau OpenGL pour les cartes vidéo NVIDIA.

Il est également envisagé la possibilité de utiliser le projet Zink pour implémenter un pilote OpenGL pour les cartes vidéo NVIDIA qui fonctionne grâce à la traduction des appels API Vulkan.

A long terme, on espère que NVK sera au matériel NVIDIA ce que RADV est au matériel AMD.

Enfin, pour ceux qui s'intéressent au projet, il est mentionné que est développé par une équipe qui comprend Karol Herbst (Développeur Nouveau chez Red Hat), David Airlie (mainteneur DRM chez Red Hat) et Jason Ekstrand (développeur actif de Mesa dans Collabora).

En ce qui concerne le code du contrôleur, vous devez savoir que Il est open source sous licence MIT. Le pilote ne prend en charge que les GPU basés sur les microarchitectures Turing et Ampere publiées depuis septembre 2018. Si vous souhaitez en savoir plus, vous pouvez vous référer aux détails. dans le lien suivant.


Soyez le premier à commenter

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.