On peut désormais utiliser Vulkan sur Raspberry Pi 4 » Raspberry pour les débutants

Cubo de vkcube acelerado con Vulkan en Raspberry Pi 4

Près de 10 mois après son annonce, nous pouvons désormais utiliser Vulkan sur Raspberry Pi 4. Et nous ne parlons pas d’une implémentation faite par la communauté, comme dans le cas de Vulkan sur Raspberry Pi 3. Ce sont plutôt des pilotes officiels programmés par igalia qui ont été ajoutés à la bibliothèque MESA et, une fois testés, seront ajoutés aux référentiels Raspberry Pi OS et mis à la disposition de tous.

Comme nous le savons déjà, Vulcain Il s’agit d’une API qui permet un accès plus rapide à la carte graphique et une meilleure utilisation des cœurs du processeur, augmentant les performances graphiques du Raspberry Pi. Pour utiliser cette API, la carte graphique doit être compatible au niveau matériel, ce qui se produit avec le VI VideoCore de ce Raspberry Pi. Une fois que nous répondrons à ces exigences, et si le programme ou le jeu que nous voulons utiliser a cette API implémentée, nous remarquerons une amélioration de ses performances. Mais c’est, si le processeur le permet.

Et c’est que quand on parle de processeur, celui du Raspberry Pi 4 est suffisant pour de nombreuses tâches, mais pas pour les choses lourdes. Si nous voulons émuler un système plus ou moins nouveau comme la Wii, la PSP ou la PlayStation 2, ou jouer à des jeux comme Doom III, nous constaterons toujours que les performances ne sont pas les mêmes que sur un ordinateur approprié.

Mais nous ne recherchons pas seulement de meilleures performances en utilisant Vulkan sur le Raspberry Pi 4. Nous souhaitons également une plus grande compatibilité avec les nouveaux programmes, comme Blender, qui dans ses dernières versions ne prend en charge que cette API pour la gestion des graphiques.

Vous êtes peut-être venu ici pour essayer Vulkan vous-même sur le Raspberry Pi 4. Ainsi, après avoir expliqué en détail ce qu’est Vulkan et les avantages qu’il apporte, voyons comment l’installer, le tester, puis décider s’il reste. .

Installer Vulkan sur Raspberry Pi 4

Comme je l’ai expliqué précédemment, cette implémentation Vulkan pour Raspberry Pi 4 est incluse dans les pilotes MESA à partir de la version 20.3. Si nous voulons utiliser ces nouveaux pilotes, nous devons les compiler et les installer à la main, jusqu’à ce qu’ils soient ajoutés au système d’exploitation Raspberry Pi. Le processus est très similaire, que nous utilisions le système d’exploitation 32 bits ou 64 bits, avec quelques différences. Mais une fois ces nouveaux pilotes installés, nous pourrons utiliser tout ce qui est déjà implémenté depuis Vulkan sur notre Raspberry Pi 4.

La première chose que nous faisons est la même que toujours, c’est-à-dire nous assurer que nous avons le système d’exploitation Raspberry Pi mis à jour, car dans ce cas, nous allons utiliser ce système d’exploitation pour le test. Pour cela, nous allons taper la commande suivante dans un terminal :

sudo apt update && sudo apt upgrade -y

Une fois que nous avons tout mis à jour, nous devons maintenant installer toutes les dépendances nécessaires pour compiler MESA 20.3. Nous allons le faire avec la commande suivante dans le terminal :

sudo apt install -y libxcb-randr0-dev libxrandr-dev \
        libxcb-xinerama0-dev libxinerama-dev libxcursor-dev \
        libxcb-cursor-dev libxkbcommon-dev xutils-dev \
        xutils-dev libpthread-stubs0-dev libpciaccess-dev \
        libffi-dev x11proto-xext-dev libxcb1-dev libxcb-*dev \
        bison flex libssl-dev libgnutls28-dev x11proto-dri2-dev \
        x11proto-dri3-dev libx11-dev libxcb-glx0-dev \
        libx11-xcb-dev libxext-dev libxdamage-dev libxfixes-dev \
        libva-dev x11proto-randr-dev x11proto-present-dev \
        libclc-dev libelf-dev git build-essential mesa-utils \
        libvulkan-dev ninja-build libvulkan1 python-mako \
        libdrm-dev libxshmfence-dev libxxf86vm-dev libunwind-dev \
		valgrind libzstd-dev vulkan-tools -y

Selon les packages que nous avons déjà installés, cette commande prendra plus ou moins pour se terminer, même si cela ne prend généralement pas plus de quelques minutes. Une fois l’installation terminée, nous procéderons à l’installation de mako et meson, ce qui nous aidera à compiler MESA 20.3 et ainsi avoir Vulkan sur Raspberry Pi 4. Ces deux programmes sont des scripts Python, donc la façon de l’installer sera différente. . De plus, nous essaierons également de désinstaller meson, au cas où nous l’aurions installé à partir des référentiels Raspberry Pi OS, car nous aurons une ancienne version. Nous allons faire tout cela en mettant les commandes suivantes dans le terminal :

sudo apt purge meson -y
sudo pip3 install meson
sudo pip3 install mako

Une fois que nous avons tout installé, nous devons avoir le code source MESA pour pouvoir le compiler et ainsi pouvoir accéder à l’API Vulkan sur Raspberry Pi 4. Afin de télécharger le code source, nous utiliserons l’outil git dans le terminal , en mettant ce qui suit :

cd ~
git clone https://gitlab.freedesktop.org/mesa/mesa.git mesa_vulkan
cd mesa_vulkan
Nous pouvons desormais utiliser Vulkan sur Raspberry Pi 4 Raspberry

Nous serons maintenant dans le répertoire où nous avons téléchargé le code source MESA pour pouvoir le compiler. Pourtant, nous devons vous dire comment le compiler correctement pour notre Raspberry Pi 4, afin que nous puissions utiliser correctement Vulkan. Selon l’architecture du Raspberry Pi OS nous devrons mettre une ligne différente pour configurer meson et que MESA compile correctement. Ci-dessous, je laisse les lignes en fonction du système d’exploitation que nous utilisons :

Configuration de meson pour le système d’exploitation Raspberry Pi 32 bits

CFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" CXXFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8" meson --prefix /usr -Dplatforms=x11 -Dvulkan-drivers=broadcom -Ddri-drivers= -Dgallium-drivers=kmsro,v3d,vc4 -Dbuildtype=release build

Configuration de meson pour le système d’exploitation Raspberry Pi 64 bits

CFLAGS="-mcpu=cortex-a72" CXXFLAGS="-mcpu=cortex-a72" meson --prefix /usr -Dplatforms=x11 -Dvulkan-drivers=broadcom -Ddri-drivers= -Dgallium-drivers=kmsro,v3d,vc4 -Dbuildtype=release build
1605012720 469 Nous pouvons desormais utiliser Vulkan sur Raspberry Pi 4 Raspberry

Si nous n’avons eu aucune erreur, nous devrions avoir un écran comme celui de l’image ci-dessus indiquant que nous pouvons maintenant compiler MESA. Pour ce faire, nous allons mettre les commandes suivantes dans le terminal, provoquant le démarrage du processus, cela prendra environ 20 minutes.

ninja -C build -j4
sudo ninja -C build install
Fin de la compilation de MESA 20.3

Une fois que tout est terminé, nous verrons un écran comme celui ci-dessus, indiquant que tout a été copié correctement. Nous devons maintenant redémarrer et nous pouvons utiliser l’API Vulkan sur Raspberry Pi 4. N’oubliez pas que la meilleure façon de redémarrer le Raspberry Pi est à partir du système d’exploitation lui-même et non en le débranchant et en le rebranchant. Pour le redémarrer, je le fais généralement depuis le terminal avec cette commande :

sudo reboot

Et maintenant que nous avons déjà redémarré, la meilleure façon de vérifier que Vulkan fonctionne sur notre Raspberry Pi 4 est via un utilitaire, tel que vkcube, que nous pouvons utiliser avec la commande suivante dans le terminal :

vkcube
1605012720 996 Nous pouvons desormais utiliser Vulkan sur Raspberry Pi 4 Raspberry

Comment fonctionne Vulkan sur Raspberry Pi 4 ?

Comme on peut le voir sur l’image vkcube, Vulkan sur Raspberry Pi 4 fonctionne, mais ce n’est pas sans bugs. Bien que nous ayons l’API implémentée dans MESA, cela ne signifie pas que toutes les fonctions Vulkan sont déjà implémentées ou prises en charge par la carte graphique Raspberry Pi 4, il est donc encore temps pour Vulkan d’avoir la même compatibilité sur le Raspberry Pi que sur un normal ordinateur.

Cela ne signifie pas que nous ne pouvons pas utiliser Vulkan sur le Raspberry Pi 4. Il peut être utilisé et il fonctionne. Et cela signifie que de nombreux programmes et jeux qui utilisent cette API pourront fonctionner sans problème sur le Raspberry Pi une fois leur code source adapté à l’architecture ARM, bien que selon le processeur dont ils ont besoin, ils n’auront pas des performances optimales. .

Après avoir cherché des choses pour pouvoir tester l’API Vulkan sur le Raspberry Pi 4 avec des programmes exigeants, j’ai fait quelques tests avec l’émulateur Dolphin pour Wii et GameCube, et l’émulateur PPSSPP pour PSP, avec des résultats intéressants.

Pour commencer, ces émulateurs ont trouvé 2 adaptateurs Vulkan. L’un d’eux était V3D 4.2 et l’autre était llvmpipe, ce que j’ai trouvé curieux. Après avoir testé les deux appareils sur les deux émulateurs, je peux vous dire comment ça se passe, même si ce que j’ai testé est une partie minimale de tous les programmes que nous pouvons utiliser avec Vulkan sur Raspberry Pi 4.

Pour commencer nous parlerons de Dauphin. Cet émulateur nous a permis de jouer aux jeux GameCube et Wii pendant un certain temps, et il a une version 64 bits pour ARM, nous pouvons donc l’utiliser sans problème sur le système d’exploitation Raspberry Pi 64 bits. Si nous mettons à jour MESA vers la version 20.3, nous pouvons également utiliser Vulkan, avec des résultats différents selon l’adaptateur que nous configurons pour rendre l’image.

Si nous utilisons V3D 4.2 comme adaptateur, les performances que nous obtiendrons sont similaires à celles que nous obtiendrions en utilisant OpenGL, ce qui dans mon cas est plutôt mauvais, rendant ce jeu injouable. Dans le cas de llvmpipe, les performances sont meilleures, mais il y a quelque chose appelé explosion de vertex qui fait scintiller les polygones et, bien que nous ayons de meilleures performances qu’avec OpenGL, nous ne pouvons pas jouer au jeu en raison des problèmes graphiques que nous rencontrons.

Différence entre Vulkan et OpenGL avec l'émulateur Dolphin sur Raspberry Pi 4

avec l’émulateur PPSSPP Nous voyons des résultats différents en utilisant l’API Vulkan sur le Raspberry Pi 4 que nous avons rencontrés auparavant. Avec les deux adaptateurs, nous avons une image sans erreurs et beaucoup plus définie que dans le cas d’OpenGL. Les problèmes viennent des performances de l’API Vulkan, un peu moins bonnes que celles d’OpenGL dans cet émulateur.

1605012720 111 Nous pouvons desormais utiliser Vulkan sur Raspberry Pi 4 Raspberry

Même ainsi, l’implémentation de l’API Vulkan sur le Raspberry Pi 4 rendra compatibles de nombreux programmes et jeux qui n’étaient pas compatibles, et combiné avec box86, nous pouvons obtenir une excellente machine pour notre divertissement pour un prix dérisoire.

Si vous avez déjà essayé Vulkan sur Raspberry Pi 4, laissez un commentaire avec vos résultats afin que le reste d’entre nous connaisse les performances dans d’autres jeux et programmes et sache ainsi mieux si ces avancées feront le bonheur de tous les utilisateurs.

Plus d’informations:

[themoneytizer id=»32486-28″]

Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

YouTube video

  • Miuzei Boîtier pour Raspberry Pi 4 avec Ventilateur 35mm et Grand Dissipateur 15mm - Alimentation USB-C 5V 3A avec Interrupteur Marche/Arrêt - Compatible avec Pi 4 Modèle B 8 Go/4 Go/2 Go
  • Raspberry Pi 4 4 Go Starter Kit | Alimentation Officielle 15W | Boîtier Officiel | Carte mémoire de 64 Go | Câble 4k Micro HDMI | Kit dissipateur Thermique