Le phénomène du jeu vidéo a été accéléré par l’utilisation de la plate-forme Steam, ainsi que la récente mise à disposition des drivers Nvidia open source sur Github toutefois c’est un peu plus complexe que cela.
Le simple fait d’annoncer que la nouvelle console hybride utiliserait la plate-forme Linux a fait grimper la part de marché de Linux sur Steam de 1 %. Cela n’a peut-être pas l’air de grand-chose, mais pour les joueurs Linux, c’est une affaire énorme qui ne fait que s’amplifier et potentiellement s’améliorer.
Récemment, dans le cadre de cet essor des jeux sous Linux et par volonté d’ouvrir le développement de module kernel, Nvidia a fait l’impensable en publiant certains de ses pilotes de GPU Linux en open source. Cela a commencé par les noyaux GPU, ce qui devrait permettre aux développeurs Linux de résoudre plus facilement les problèmes. Cela sera sans doute facilité par les rapports de bogues statistiquement meilleurs des utilisateurs de Linux.
Dans l’idée, cette disponibilité open source permettrai surtout des possibilités en GPGPU plus ouverte qu’avant pour les développeurs. En effet, cela ouvrirait à la modification des dits drivers pour intégrer des options supplémentaires qui peuvent être utiles à certains usages.
Mais il semble que cette version ne soit pas aussi bonne que nous l’espérions initialement, selon le développeur Hector Martin. Martin a posté une série de Tweets expliquant que la plupart des pilotes du noyau ont en fait été déplacés vers le firmware. Le nouveau composant open source interagit avec ce firmware fermé, mais la majeure partie du travail semble toujours se dérouler derrière les portes closes de Nvidia, quelle surprise.
So NVIDIA « released » their kernel driver as open source.
By which they mean, they moved most of it to firmware and made the open source driver call into it. There are almost 900 functions implemented in the 34MB firmware, give or take, from what I can see.
Broadcom vibes…
— Hector Martin (@marcan42) May 12, 2022
Martin note également que cela pourrait être dû en grande partie à des accords de brevets et de licences au sein du code. Il y a probablement beaucoup de choses que Nvidia n’a pas le droit de laisser libres et c’était potentiellement le meilleur effort que la société pouvait faire pour le moment.
La FAQ de Nvidia indique également que les pilotes en mode utilisateur tels que CUDA ne seront pas modifiés et resteront fermés. Cependant, on peut se demander pourquoi Nvidia a choisi de gérer le code différemment des autres projets open source, d’autant plus qu’une grande partie du code est encore techniquement protégée.
Plutôt qu’une collaboration typique de Github lorsqu’il s’agit de soumettre des correctifs, Nvidia conserve un certain contrôle. Les correctifs peuvent être soumis par le biais de demandes de retrait, que Nvidia examinera et intégrera éventuellement avec des modifications dans une nouvelle version du pilote. En tant que tel, le code source publié ne sera jamais qu’un instantané généré à partir de la base de code partagée, du moins pour le moment.
Bien que ce soit une bonne chose de voir un code Nvidia devenir open source, surtout quand il s’agit de Linux, ce n’est certainement pas aussi ouvert que beaucoup le souhaiteraient. Peut-être qu’une source légèrement entrouverte aurait été un meilleur nom cette fois-ci.