Overblog
Editer l'article Suivre ce blog Administration + Créer mon blog

          Global Informatique Securite

Global Informatique Securite

Suivez les dernières actualités, sécurité informatique "Bugs & failles". Tenez-vous Informé des dernières Technologies et Optimisation système


Energy Aware Scheduling dans Linux 5.0

Publié par Quentin Perret Traduction Yomane sur 26 Février 2019, 02:26am

Catégories : #News & Innovations

Qu'est-ce que l'EAS?

Energy Aware Scheduling (EAS) Linux 5.0 planification éconergétiques plates-formes big.LITTLE DynamIQ Arm  CPU DVFS, CPUFreq CPUFreq schedutil

EAS est une extension du planificateur de tâches Linux qui améliore la durée de vie de la batterie des appareils mobiles. Il utilise un modèle de consommation d'énergie de l'unité centrale (appelé modèle énergétique) pour optimiser le placement des tâches sur les unités centrales les plus éconergétiques des plates-formes big.LITTLE et / ou DynamIQ, tout en répondant aux exigences de calcul. L'EM fournit au planificateur une vue abstraite de la topologie de la CPU et l'informe du coût en énergie associé à l'exécution de chaque CPU aux fréquences disponibles. En utilisant l'EM, EAS est alors capable de prédire quel sera l'impact de l'exécution d'une tâche sur une unité centrale ou une autre sur l'énergie, et de prendre des décisions qui minimisent la consommation d'énergie.

Un point clé de la conception de EAS réside dans sa liaison étroite avec le sous-système DVFS, CPUFreq, qui est responsable de la gestion des fréquences des processeurs. Le gouverneur CPUFreq schedutil utilise les métriques de suivi de la charge du planificateur pour décider des changements de fréquence des processeurs. Les mêmes métriques sont également utilisées par les algorithmes EAS pour coordonner les demandes de fréquence et les décisions de placement de tâches. Ce niveau de coordination associé à la SE permet à EAS d’estimer l’impact d’une migration de tâches sur la consommation d’énergie du système, et d’en tenir compte lors du processus de prise de décision. En substance, EAS permet au planificateur de tâches Linux de tirer parti de l'efficacité énergétique de petits processeurs pour améliorer la durée de vie de la batterie des appareils mobiles sans nuire aux performances.

La figure ci-dessous montre les résultats de tests utilisant EAS sur une plate-forme Arm Juno r0 utilisant RT-App (un générateur de charge de travail synthétique) dans un scénario de faible intensité où la consommation d'énergie est la principale préoccupation et Hackbench comme référence de performance. Vous trouverez plus de détails sur la configuration du test et les métriques dans la lettre d'accompagnement EAS originale  sur LKML  .

Energy Aware Scheduling (EAS) Linux 5.0 planification éconergétiques plates-formes big.LITTLE DynamIQ Arm  CPU DVFS, CPUFreq CPUFreq schedutil

Notre implémentation principale a été soigneusement conçue pour permettre plusieurs sources pour les données de configuration EM. À partir de la version 5.1, Linux continuera à prendre en charge le chargement d’un ME par:

  • utiliser la dynamic-power-coefficientliaison de l' arbre de devicetree qui permet d'estimer la puissance consommée par une CPU à toute fréquence possible;
  • ou en utilisant les valeurs de puissance / performance fournies par le micrologiciel à l'aide de l' interface SCMI ( Arm  Software Control and Management) . Dans la mesure du possible, il s'agit de l'option préférée, car le micrologiciel en sait souvent plus sur l'implémentation spécifique que le noyau (par exemple, la révision du silicium ou la technologie de fabrication du silicium).

Pourquoi l'EAS dans les affaires principales?

Produits basés sur la technologie Arm big.LITTLE lancée en 2013. Lors des premières itérations, une simple technologie de commutation de CPU a été utilisée pour exécuter des tâches sur un «grand» cœur hautes performances ou sur un «petit» cœur économe en énergie. Plus tard, la planification globale des tâches a permis à tous les cœurs d'être visibles par le planificateur, ce qui a prouvé son utilité. Depuis Android 3.18, le noyau commun Android est pris en charge par EAS, ce qui permet au planificateur Linux de prendre conscience des différences de puissance / performances entre les cœurs. Parallèlement, Arm et Linaro ont travaillé de près pour améliorer progressivement le planificateur Linux principal afin de prendre pleinement conscience des différences entre les processeurs. Cela a abouti à l'ajout de l'EM qui complète les éléments pour permettre à l'EAS de fonctionner dans les noyaux de lignes principales.

Avec EAS en amont, toute la gamme de produits dérivés de Linux est en mesure de réaliser des économies d’énergie, y compris ChromeOS et toutes les distributions Linux, par exemple. Pour les utilisateurs existants d'EAS sous Android, le fait de pouvoir utiliser une fonctionnalité principale au lieu d'un code spécifique à Android les soulage d'une charge de maintenance importante due à un code non arboré. De plus, avoir EAS dans mainline améliorera la couverture des tests en permettant à plus de développeurs de l’utiliser, ce qui contribuera à augmenter encore la qualité du code.

Pour plus d'informations

La page Web du développeur EAS Arm  suit les dernières activités de développement liées à EAS. De plus, la documentation principale des blocs de construction EAS (anticipée dans Linux 5.1+) se trouve dans l’arborescence du noyau sous:

  • Documentation/power/energy-model.txt (décrit les API du cadre EM utilisé par EAS et explique comment les nouvelles plates-formes peuvent l'utiliser);
  • Documentation/scheduler/sched-energy.txt (détaille les points clés de la conception de EAS et comment l’activer étape par étape)

 a lire

Source : community

   

 

Pour être informé des derniers articles, inscrivez vous :

Commenter cet article

Archives

Nous sommes sociaux !

Articles récents