L’avenir du RISC-V et de l’ordinateur monocarte VisionFive 2

Nous suivons depuis un certain temps le RISC-V ISA ouvert et libre de droits. Au début, nous avons lu les spécifications, puis nous avons vu les cœurs RISC-V dans les microcontrôleurs, mais maintenant il y a une nouvelle carte qui offre suffisamment de puissance de traitement à un prix suffisamment bas pour être vraiment intéressante dans un ordinateur monocarte. Le VisionFive 2 a lancé un Kickstarter réussi en septembre 2022, et j’ai enfin reçu une unité avec 8 Go de RAM. Et il fonctionne! Le JH7110 ne surpassera pas un ordinateur de bureau moderne, ni même un Raspberry Pi 4, mais il est suffisant pour exécuter un environnement de bureau, naviguer sur le Web et tester des logiciels.

Et c’est en quelque sorte un gros problème, car l’architecture RISC-V commence à apparaître dans de nombreux endroits. Le défi consistait à obtenir un matériel réel suffisamment puissant pour exécuter Linux et compiler des logiciels, qui ne coûte pas un bras et une jambe. Si ARM est une architecture alternative, alors RISC-V est toujours expérimental, et c’est un problème lorsque vous essayez d’utiliser le VF2. C’est un thème que nous répéterons plusieurs fois, mais la chose à retenir ici est que l’obtention de plus d’appareils dans la nature est la première étape pour réparer les choses.

Le matériel

Alors qu’est-ce que vous obtenez? Le VF2 est disponible en trois versions, avec deux, quatre et huit gigaoctets de RAM. Les cartes sont par ailleurs identiques, et la vedette du spectacle est le JH7110, un SoC RISC-V quadricœur 64 bits. Le GPU Imagination BXE-4-32 est intégré à ce processeur. Il y a un port USB-C, généralement utilisé pour alimenter la carte, 4 ports USB 3.0 partageant une seule voie PCIe 2.0 et deux ports Ethernet Gigabit. La carte ne possède qu’un seul port HDMI 2.0, mais est également capable d’exécuter deux écrans en utilisant un port MIPI DSI.

Il existe également des fonctionnalités de compatibilité Raspberry Pi intéressantes. La carte a un en-tête GPIO à 40 broches, principalement compatible avec le brochage Raspberry Pi, et a même l’en-tête Power over Ethernet à quatre broches au bon endroit pour utiliser les Pi PoE HAT. Cela fonctionne très bien, le seul élément manquant étant le contrôle du ventilateur sur le HAT.

Il y a aussi l’entrée MIPI. Cela devrait être compatible avec quelque chose comme les caméras Raspberry Pi, même si je n’ai pas d’une part pour tester. Il y a un emplacement pour carte SD, une prise eMMC et un emplacement M.2 NVMe très apprécié au bas de l’appareil. Jusqu’à présent, le démarrage à partir du NVMe nécessite toujours une partition de démarrage sur la carte SD, mais entraîne toujours toute l’augmentation de vitesse que vaut la seule voie PCIe 2.0 dédiée. Le démarrage direct à partir de NVMe est sur la feuille de route, mais pas encore implémenté.

Prise en charge du système d’exploitation

Le matériel est raisonnablement impressionnant, mais l’utilitaire dépend du support du système d’exploitation et du logiciel. Il y a une image Debian qui voit des mises à jour régulières, avec des problèmes continuellement corrigés. Ce qui nous importe vraiment, c’est le statut en amont, et ce processus a commencé. Il y a de l’espoir pour un système à démarrage minimal avec le noyau 6.3, bien qu’il y ait pas mal de pilotes en amont avant que le système ne soit pleinement utilisable avec le noyau vanille.

Et l’un de ces pilotes que nous devons mentionner est le GPU. Le matériel est connu sous le nom de GPU BXE-4-32, un noyau GPU d’Imagination Technologies et successeur de l’architecture PowerVR. Imagination joue un jeu pour intégrer ses conceptions dans les puces RISC-V et, dans le cadre de cela, a publié des pilotes open source pour ses produits modernes. Il y a un effort continu pour mettre en amont ces pilotes, et un code d’activation a déjà atterri dans Mesa.

Il y a aussi la question plus large du support RISC-V. La plupart des distributions modernes créent des packages RISC-V, mais il n’est pas rare de trouver des problèmes ou des packages défaillants sur cette architecture moins populaire. Par exemple, je voulais comparer la carte VF2 à l’aide de la suite de tests Phoronix. Cela est disponible en tant que package noarch, mais a plusieurs dépendances, comme php-cli. Cela dépend de php8.2, et ce paquet ne parvient pas actuellement à se compiler sur RISC-V sur Debian. Un correctif est disponible pour résoudre le problème, j’ai donc pu reconstruire le .deb sur le VF2 et faire fonctionner les choses.

Donc à propos de ces repères

C’est toujours amusant de comparer un nouveau matériel brillant. Imaginez donc ma déception lorsque presque tous les tests de processeur que j’ai essayés n’ont pas réussi à s’installer ou à s’exécuter. Je soupçonne que c’est aussi la nouveauté de la plate-forme RISC-V, car de nombreux tests PTS n’ont tout simplement pas encore été conçus pour la plate-forme.

Pour ceux qui ont couru, ce n’est pas génial. Jetez un oeil à mes résultats. Je soupçonne que les performances peuvent augmenter à mesure que le logiciel devient plus mature, mais il est actuellement loin derrière un Raspberry Pi 4. Jeff Geerling couvre également cette carte et a constaté que le VF2 fonctionne actuellement dans le stade d’un Pi B 3.

Il existe quelques exceptions importantes à ces observations. Tout d’abord, les tests système qui reposent fortement sur l’accès au disque montrent un avantage significatif pour le VF2. Le Pi a été démarré à partir d’un lecteur NVMe via un adaptateur USB3, mais les performances NVMe natives sont toujours nettement meilleures.

Et puis ces deux ports Ethernet sont particulièrement intéressants. Cette chose pourrait-elle être utile en tant que routeur haute performance ? J’ai vérifié ses performances en poussant des paquets avec l’installation de Debian, et il est capable d’atteindre des vitesses presque filaires. J’ai effectué un test de vitesse iperf3 via l’appareil en effectuant un simple NAT, similaire à une installation de routeur standard, et il a réussi à atteindre une moyenne de 755 Mbits par seconde. En utilisant l’option bidirectionnelle, le test a géré un peu plus de 600 Mbits par seconde dans les deux sens. Respectable pour tout sauf une connexion Internet Gigabit complète. Des travaux ont été effectués pour amener OpenWRT sur la plate-forme, et cela peut s’accompagner d’un meilleur débit, mais la dernière branche de développement OpenWRT ne parvient pas à démarrer sur mon appareil.

A quoi ça sert ?

Cela fait beaucoup de ports.

OK, nous avons couvert beaucoup de terrain. Alors, à quoi ressemblent les punaises en laiton ici ? Le VisionFive 2 a du potentiel. Les deux ports Gigabit et la prise en charge à venir d’OpenWRT rendent l’appareil à 100 $ tentant en tant que routeur, et la prise en charge PoE ne fait pas de mal. Le lecteur NVMe est une autre longueur d’avance, et il pourrait y avoir un cas pour le VF2 en tant que périphérique de stockage réseau.

Il n’est pas assez puissant pour être un périphérique de remplacement de bureau, et le manque de ports HDMI doubles n’aide en rien. Les différentes distributions n’ont pas encore vraiment de support de niveau 1 pour RISC-V non plus. Et curieusement, c’est peut-être le principal argument de vente de cette planche. Faites-vous du travail de maintenance ou de programmation ? Avez-vous déjà vérifié votre code sur un processeur RISC-V ? C’est la vraie opportunité ici. Il s’agit d’une plate-forme abordable pour tester la prise en charge de RISC-V.

Ce processus est en cours, pour les développeurs du monde entier. Et c’est l’une des raisons pour lesquelles les performances sont un peu décevantes. De nombreuses applications qui ont besoin de performances ont une fonction multiversion, une technique qui permet un code spécifique à la plate-forme qui peut vraiment améliorer les performances. Si une plate-forme n’a pas d’implémentation personnalisée, le programme revient au code par défaut plus lent. Et compte tenu de la nouveauté relative de la plate-forme RISC-V, il n’est pas surprenant que les performances ne soient pas encore au top.

Mais 2023 pourrait bien être l’année du RISC-V SBC. Le VisionFive 2 est disponible et les gens de Pine64 prévoient une nouvelle carte basée sur le même processeur JH7110. Il y a la prochaine carte HiFive Pro ou le processeur Ventana Veyron. Alors peut-être qu’il est temps de plonger et d’essayer RISC-V.

François Zipponi
Je suis François Zipponi, éditorialiste pour le site 10-raisons.fr. J'ai commencé ma carrière de journaliste en 2004, et j'ai travaillé pour plusieurs médias français, dont le Monde et Libération. En 2016, j'ai rejoint 10-raisons.fr, un site innovant proposant des articles sous la forme « 10 raisons de... ». En tant qu'éditorialiste, je me suis engagé à fournir un contenu original et pertinent, abordant des sujets variés tels que la politique, l'économie, les sciences, l'histoire, etc. Je m'efforce de toujours traiter les sujets de façon objective et impartiale. Mes articles sont régulièrement partagés sur les réseaux sociaux et j'interviens dans des conférences et des tables rondes autour des thèmes abordés sur 10-raisons.fr.