É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
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 .
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.
Cette 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 :
- http://blog.broadcom.com/chip-design/android-for-all-broadcom-gives-developers-keys-to-the-videocore-kingdom/
- http://hackaday.com/2014/02/28/raspberry-pi-gpu-goes-open-source-10000-bounty-for-quake-3/
- http://www.raspberrypi.org/archives/6299
- http://www.broadcom.com/support/
- http://linuxfr.org/news/broadcom-libere-la-pile-graphique-du-raspberry-pi
- https://github.com/raspberrypi/userland
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.
Il faudra un peu de temps mais je pense que ça va se débloquer de ce côté là
cordialement
François
Ping : Broadcom libère le GPU du Raspberry ...
Un besoin depuis le début : détecter le top synchro vertical depuis le soft…
Ca devrait être envisageable maintenant !!!
Ping : Broadcom libère le GPU du Raspberry ...
Ping : Broadcom libère le GPU du Raspberry Pi !...
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
Bonjour Ilias
a ma connaissance ffmpeg n’utilise pas le GPU
https://www.raspberrypi.org/forums/viewtopic.php?t=72435
ou https://github.com/ccrisan/motionpie/issues/250
https://trac.ffmpeg.org/ticket/3518
mais….ça n a pas l’air évident pour le moment ????
cordialement
François
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
****En fait je cherche une solution pour encoder en H264 et qui utiliserait le GPU du Framboise :)***
Hello
ceci veut il dire que VLC tournerait tel quel sur PI3 ?