Publié le 2 mars 2014 - par

Broadcom libère le GPU du Raspberry Pi !

code_GPU_libere_250px Événement exceptionnel à l’occasion du deuxième anniversaire de la sortie du Raspberry Pi : Broadcom libère la documentation du GPU inclus dans le SOC de notre framboise314.

C’est Eben UPTON lui même qui a annoncé la nouvelle sur le blog de Broadcom le 28 février 2014. Pour saluer cette libération la Fondation offre 10 000$ (7244€) au premier qui fera tourner Quake III sur le Raspberry Pi à une vitesse jouable, avec les nouveaux drivers libérés ! (Vous pouvez lire le règlement du concours)

Broadcom libère le GPU du Raspberry Pi

enfin_libre_600px

La communauté de développeurs open-source mobiles n’arrêtait pas de réclamer cette libération, et Broadcom a finalement entendu leur appel .

À ce jour, il y avait un manque de documentation pour développer des pilotes open-source pour les sous-systèmes graphiques des SoC mobiles (dont celui du Raspberry Pi bien sûr !). La fourniture des seuls pilotes binaires empêchait les utilisateurs de la corriger les bugs ou d’améliorer les graphismes, et compliquait la tâche de portage de nouveaux systèmes d’exploitation utilisant ce composant sans l’aide du fournisseur .

Mais les choses changent enfin, et Broadcom souhaite un Joyeux Anniversaire au  Raspberry Pi, vendu à plus de 2,5 millions d’exemplaires à ce jour !

Broadcom publie la documentation intégrale du GPU ainsi que la totalité du code source des drivers OpenGL ES 1.1 et 2.0 pour le GPU Broadcom VideoCore ® IV 3D utilisé dans le SoC BCM21553. Le GPU VideoCore IV est utilisé dans de nombreux produits de Broadcom, y compris dans le SoC BCM2835, qui équipe notre nano-ordinateur Raspberry Pi .

Qui sera le premier à faire tourner Quake III sur Raspberry Pi pour 10 000 $ ?

Qui sera le premier à faire tourner Quake III sur Raspberry Pi pour 10 000 $ ?

La tendance au cours de la dernière décennie a été d’aller vers une plus grande ouverture dans les systèmes graphiques pour les ordinateurs de bureau, et la même chose se passe pour les composants dédiés aux mobiles. Broadcom – un leader de longue date dans les processeurs graphiques – joue les précurseurs dans ce domaine et on ne peut qu’espérer que cela contribuera à inciter les concurrents à faire de même.

La pile de pilotes VideoCore, qui comprend un compilateur conforme aux standards pour l’OpenGL ® ES Shading Language, est fourni sous licence BSD 3, la libération du code  source est accompagnée de celle d’une documentation complète descendant au niveau des registres pour le processeur graphique.

boulet_chaine_150pxCette libération de caractéristiques et de code offre à la communauté de développeurs pour les mobiles la possibilité d’écrire leurs propres drivers et d’améliorer leurs systèmes mobiles 3G existants, en vue des nouvelles générations du système d’exploitation Android.

A quoi ça va servir ?

Les programmeurs (expérimentés) pourront :

  • Reconstruire la pile de drivers  graphiques du BCM21553 pour Android 4.0 à partir du code source
  • Développer des pilotes totalement ouverts pour d’autres appareils, y compris le VideoCore BCM2835 du Raspberry Pi et le BCM21654 (un composant à faible coût pour les marchés émergents intégrant la 3G)
  • Mieux comprendre le fonctionnement interne du GPU VideoCore pour optimiser ses performances
  • Écrire du code à usage général tirant parti de la capacité de calcul des GPU VideoCore IV

Ce n’est pas la fin de la route pour nous : il y a encore des parties importantes du matériel multimédia sur BCM2835 qui ne sont accessibles que par l’intermédiaire du binaire. Mais c’est déjà exceptionnel que le VideoCore IV du Raspberry Pi soit le premier GPU publiquement documenté.

Conclusion

Pour le deuxième anniversaire de notre framboise314, la nouvelle ouvre de nouveaux horizons. Le Raspberry Pi va pouvoir exploiter pleinement la puissance de calcul du GPU du SoC Broadcom BCM2835.

Ceci ouvre la voie vers des graphismes plus rapides, mais aussi vers l’exploitation du GPU par d’autres programmes. Le Raspberry Pi va encore nous étonner !

A noter les nuances apportées par linuxfr.org car les pilotes font appel à un code binaire tournant dans le GPU. A suivre donc…

Merci à Seb qui m’a signalé l’article d’origine !

Sources :

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

8 réflexions au sujet de « Broadcom libère le GPU du Raspberry Pi ! »

  1. hervé

    Ah ! On va peut-être enfin pouvoir trouver des gens qui travaillent sur la connexion d’un afficheur. J’avais mis le R.PI à l’arrêt tant qu’il fallait bidouiller avec des LCD pilotés en SPI.

    Répondre
  2. Ping : Broadcom libère le GPU du Raspberry&nbsp...

  3. Ping : Broadcom libère le GPU du Raspberry&nbsp...

  4. Ping : Broadcom libère le GPU du Raspberry Pi !...

  5. ILias

    Bonjour,
    je cherche à utiliser le GPU pour encoder des vidéos est-ce que c’est devenu possible avec FFmpeg et sinon y a t’il d’autre encodeur qui pourrait gérer l’encodage d’un flux en temps réel en H264 ou autres format compatibles HTML 5

    Merci

    Répondre
      1. Ilias

        En fait je cherche une solution pour encoder en H264 et qui utiliserait le GPU du Framboise 🙂
        Je reçoit un flux de caméra en MJPEG et pour l’afficher sur une page HTML j’aimerai l’encapsuler en H264 sauf qu’avec ffmpeg sur le raspberry je suis à 3 ou 4 FPS…
        Comme le GPU est « libéré » peut être depuis une solution logicielle à été développée même sans ffmpeg

        Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.