NVK a débarqué !

Pilote NVK : que signifie la conformité avec Vulkan 1.0 ?

En août dernier, Collabora annonçait que le pilote open source NVK était intégré dans la branche principale de Mesa. Il était alors destiné à devenir un pilote expérimental dans la version 23.3 de Mesa. Cette semaine, NVK a atteint la conformité avec Vulkan 1.0. Explications.

La prise en charge du matériel NVIDIA dans les pilotes open-source a toujours été insuffisante. Les nouveaux pilotes existent, mais ils sont souvent dépourvus de fonctionnalités, bogués ou ne prennent tout simplement pas en charge certaines cartes. Contrairement aux pilotes Intel et AMD, la pile de pilotes nouveau a été développée avec peu (ou pas) de documentation officielle ou d’aide de la part de NVIDIA.

La réponse, initiée en octobre 2022, s’appelle NVK, premier pilote Vulkan entièrement open-source pour le matériel Nvidia. Un énorme travail auquel Red Hat a notamment contribué.

Dès aujourd’hui, NVK, le pilote Vulkan open-source pour le matériel NVIDIA dans Mesa, devient une implémentation officiellement conforme à l’API Vulkan 1.0 sur le matériel NVIDIA Turing. Vous le trouverez même sur le site web de Khronos sous la rubrique Conformant Products. C’est la première fois qu’un nouveau pilote obtient le badge de conformité Khronos pour une API.

En pratique, cela signifie qu’il passe l’ensemble des tests de conformité Vulkan. Du point de vue des utilisateurs, cela signifie surtout que le pilote devrait fonctionner sur les GPU Turing et ultérieurs. NVK est encore qualifié d’« expérimental» au sein de Mesa, mais l’avenir s’annonce prometteur, de l’aveu général.

Le principal développeur, Faith Ekstrand, s’est exprimé cette semaine, sur la suite des événements :

« Nous ne sommes pas très loin de pouvoir annoncer Vulkan 1.3. (…) Un petit groupe de développeurs travaille également sur l’ajout de la prise en charge de Maxwell au nouveau back-end, ce qui devrait permettre d’améliorer la prise en charge du matériel très prochainement. Une fois que le nouveau compilateur sera un peu plus complet, j’espère pouvoir commencer à travailler en profondeur sur les applications, en corrigeant les bugs spécifiques aux applications et en améliorant les performances. »

Techniquement, NVK fonctionne avec le même pilote de noyau Nouveau que les anciens pilotes OpenGL, mais il nécessite une API entièrement nouvelle pour l’espace utilisateur. Cette API est incluse dans Linux 6.6.

Défiler vers le haut