La certification Vulkan 1.2 des derniers drivers graphiques de la génération 4 des Raspberry Pi va rendre ces dernières cartes non seulement plus performantes mais aussi plus compatibles avec de nombreux logiciels.
Les cartes Raspberry Pi de génération 4 vont arrêter de bricoler avec la 3D. Après plus de deux années de travail de la fondation Raspberry Pi et les équipes de développement d’Igalia (Espagne), les célèbres nano ordinateurs SBC (Single Board Computer) ont enfin des drivers graphiques certifiés avec la plus importante des API graphiques open-source, Vulkan. Mieux : non seulement les Raspberry Pi ont une certification Vulkan 1.2, mais en plus la certification 1.3 (dernière mouture en date) est dans les tuyaux.
Jusqu’ici le moteur vidéo et graphique de ces petits PC basés sur des SoC Broadcomm était uniquement compatible et certifié avec les vieilles API Open GL et Open GL ES, des librairies qui ont jusqu’à 30 ans. Sans être un foudre de guerre (très loin de là), le Raspberry Pi est tout de même capable d’exécuter de la 3D de manière correcte, comme l’a montré cette démonstration de Quake 3 à plus de 100 images par seconde en 2020. La limite de cette expérimentation est que la personne derrière cette prouesse est un développeur de chez Nvidia capable de jouer avec les instructions Vulkan bas niveau à la main. Un travail expérimental, pas à la portée de tout le monde, limité dans les instructions compatibles et non réplicable avec d’autres applications.
VkQuake3 running at 100+ FPS on a @Raspberry_Pi 3B+ using the new low level RPi-VK-Driver pic.twitter.com/UhhYgQrAEi
— Martin Thomas (@0martint) June 19, 2020
En 2020, un développeur indépendant (mais travaillant pour Nvidia !) avait déjà utilisé des instructions Vulkan bas-niveau pour faire tourner Quake.
Les Raspberry 4 ne vont pas s’inventer une puissance qu’ils n’ont pas, mais outre un gain de performances 3D qui devrait être perceptible sur certaines applications (on vous voit la communauté des rétrogamers !), on est surtout en droit d’attendre plus de compatibilité et de stabilité de la plateforme. La gestion de la lumière permettant la projection d’ombres multiples (Deferred shading and shadowing) est ainsi pleinement fonctionnelle. Jusqu’ici, il était impossible pour le GPU de gérer cela en natif et il fallait soit faire une croix dessus, soit faire mouliner le CPU en plusieurs passes (opération très lente).
Pour l’heure, peu d’outils « desktop » du Raspberry Pi utilisent Vulkan – ce qui est logique puisque les drivers n’étaient pas disponibles ! Comme le rappel le fondateur du Rpi Eben Upton, le moteur de rendu graphique de Raspberry OS s’appuie entièrement sur OpenGL et « les applications qui tirent parti de Vulkan sur Raspberry Pi sont actuellement des jeux qui fonctionnent sur Android/LineageOS ». Mais la prise en charge de Vulkan devrait donner un coup de fouet à certaines applications vidéo ainsi qu’aux applications graphiques intégrées dans les navigateurs web.
Les prochaines versions de Raspberry OS devraient rapidement intégrer ces nouveaux drivers qui permettront, en temps et en heure, de basculer certaines (toutes ?) briques graphiques d’Open GL à Vulkan. Et ainsi améliorer les performances générales du SBC le plus populaire de la planète.
Source :
Fondation Raspberry Pi