De petites améliorations permettent au minuscule ordinateur monocarte de mieux fonctionner
La grande image: Le projet Raspberry Pi a été initialement conçu pour promouvoir l'enseignement de l'informatique de base dans les écoles, mais il est également devenu un succès auprès des passionnés. Les cartes Raspberry Pi sont désormais utilisées pour une infinité de projets amateurs, et les développeurs travaillent en permanence à améliorer la compatibilité de l'appareil avec les systèmes d'exploitation basés sur Linux.
Les ordinateurs monocarte (SBC) développés par la fondation Raspberry Pi sont conçus pour des projets à faible consommation d'énergie et des appareils informatiques personnalisés abordables, mais il y a toujours place à l'amélioration du côté logiciel. Le noyau Linux, utilisé par la plupart des systèmes d'exploitation compatibles Raspberry Pi, y compris le système d'exploitation officiel Raspberry Pi, a récemment été mis à jour avec deux correctifs conçus pour améliorer les fonctionnalités.
Le premier patch implémente la prise en charge initiale de Suspend-To-Idle (s2idle) pour le SoC BCM2835 basé sur Arm, qui est la puce utilisée dans les anciens modèles de Raspberry Pi (Pi 1 à Pi 3). Le développeur Stefan Wahren s'est concentré exclusivement sur ce SoC particulier car il est moins complexe que ceux utilisés dans les modèles ultérieurs et dispose d'une documentation abondante.
Linux S2idle est un type d'état suspendu défini par la norme ACPI, une technologie de gestion de l'alimentation utilisée par les systèmes d'exploitation pour gérer l'énergie des PC et autres appareils informatiques. ACPI comprend quatre états de suspension différents (S0, S1, S3, S4), S4 étant l'hibernation, où le contenu de la RAM est enregistré sur le disque avant l'arrêt.
S2idle met une machine en mode « gel », ce qui empêche l’appareil de fonctionner. Le patch axé sur Raspberry Pi peut apparemment offrir une petite économie d’énergie, ne représentant qu’un tiers de watt. Bien que cela puisse paraître insignifiant, cela s’additionne lorsqu’on considère les millions d’unités Raspberry Pi actuellement utilisées.
Le deuxième patch ajoute une implémentation « très simple » de l'émulation NUMA (accès mémoire non uniforme) pour les plateformes arm64. NUMA est une technologie bien connue dans le monde Linux et est utile pour optimiser l'accès à la mémoire en divisant la RAM physique en morceaux. Selon le développeur du patch, grâce à une politique d'allocation spécifique telle que l'entrelacement, le contrôleur mémoire utilisé par le Raspberry Pi 5 (BCM2712) peut exploiter un meilleur parallélisme dans l'organisation physique des puces mémoire.
Le résultat final de l'émulation NUMA est une augmentation « significative » des performances sur les cartes Raspberry Pi 5. Les résultats de Geekbench 6 montrent une augmentation de 6 % des performances mono-cœur, tandis que les performances multi-cœurs augmentent de 18 %. Le développeur du correctif a également noté que la politique d'allocation par défaut de Linux n'est pas entrelacée et que des « étapes supplémentaires » sont nécessaires pour débloquer les améliorations de performances dans un projet Raspberry Pi 5.