Après presque deux ans de travail, le bricoleur invétéré de Raspberry Pi et ami de Tom’s Hardware Pi Cast, Jeff Geerling, a réussi son objectif de faire fonctionner un GPU externe sur les modules de calcul 4 via le slot PCIe de la carte porteuse.
Naturellement, Geerling est plutôt satisfait du développement, qui résulte des efforts combinés de dizaines de personnes explorant, comme il le dit, « les coins sombres et poussiéreux du BCM2711 ». C’est le chipset Broadcom Arm alimentant le Compute Module 4 et le Raspberry Pi 4, qui a déjà un GPU parfaitement bon à bord. Des expériences précédentes ont vu un ancien GPU SM750 prendre vie, mais que peut apporter cette percée au Pi ?
Eh bien, pas beaucoup vraiment. Il s’agit plutôt d’une preuve de concept pour le moment, avec de la vidéo disponible en DP, VGA, DVI et HDMI sur les cartes AMD 5000/6000/7000 testées, mais de nombreux problèmes en cours de route, en particulier avec Xorg. La ligne de commande fonctionne, plus « Weston (une implémentation de référence de Wayland), ainsi que quelques benchmarks 3D et applications qui utilisent OpenGL ». Weston est moins glitchy, mais il est lent et enclin à se bloquer. Et les cartes Nvidia, semble-t-il, sont sorties.
Dans l’ensemble, il fonctionne plus lentement que le GPU intégré du Raspberry Pi, mais le pilote est encore dans un état précoce, avec « beaucoup de code de débogage actuellement, et les implémentations de copie de mémoire pécher par excès de prudence, ralentissant certaines opérations significativement ». Ensuite, il y a des choses qui ne fonctionnent tout simplement pas, comme l’accélération H.264, et bien sûr les jeux. Les choses ne sont pas aidées par le fait qu’une carte avec une interface 16x PCIe 3 est branchée dans un slot 1x PCIe 2, ce qui réduit considérablement sa bande passante disponible.
Geerling admet que, malgré la percée, il s’agit très probablement d’une impasse, et le CM4 pourrait ne jamais interagir avec un GPU de manière significative, en partie à cause de l’implémentation hors spécifications par Broadcom du complexe racine PCIe sur la puce, et en partie parce qu’il n’a jamais été conçu pour fonctionner comme ça.
Les efforts se poursuivent, cependant, avec des pages Github configurées pour suivre diverses combinaisons de cartes et de cartes, et Geerling espère que les futurs SoC de Broadcom et d’autres fabricants prendront en charge PCIe de manière plus complète, donc brancher un GPU sur votre SBC devient A-OK .