web-dev-qa-db-fra.com

Ubuntu prend-il en charge le Core Parking?

Le stationnement central est une nouvelle fonctionnalité introduite dans Windows 7 pour améliorer performances de la batterie.

Selon l’utilisation des ressources du système d’exploitation, un ou plusieurs cœurs d’un processeur multicœur peuvent être stockés afin de réduire la consommation d’énergie et les émissions thermiques de l’ordinateur. Une fois que les opérations nécessitent plus de puissance de traitement, les cœurs parqués sont réactivés pour faciliter les tâches.

Ma question est donc la suivante: y at-il un moyen de le faire sur Ubuntu 12.04 "Core Parking"?

13
Qasim

Pour le moment, je n'ai pas de réponse claire à cela , mais il est évident que le noyau Linux utilise des mécanismes d'économie d'énergie .

Cependant, après quelques recherches rapides, je me suis vite rendu compte que les noyaux Linux les plus récents utilisent une fonctionnalité appelée ACPI, qui est un acronyme de Configuration avancée et interface d'alimentation .

Ce que fait l’ACPI:

la spécification ACPI (Advanced Configuration and Power Interface) fournit un standard ouvert pour la configuration des périphériques et la gestion de l'alimentation par le système d'exploitation.

via Wikipedia .

Fondamentalement, l'ACPI permet de contrôler différents états de la CPU, ce qui permet une meilleure gestion de l'alimentation.

Différents états de la CPU ACPI:

Etats C du processeur (gestion de l'alimentation)

En gros, il n’ya probablement rien qui vous préoccupe concernant les "états C" de la CPU. Celles-ci sont automatiquement contrôlées par le système noyau + ACPI en tenant compte de la charge système actuelle. (CAVEAT: consultez la note sur les processeurs AMD Athlon et Duron ci-dessous). Le code ACPI dans les noyaux les plus récents (2.6+) met automatiquement votre CPU en veille lorsqu'il reste inactif (remarque: cela ne modifie pas la fréquence de la CPU. Elle est contrôlée par les "états P" - voir ci-dessous).

La seule chose à réaliser est que votre système est complètement "conscient" lorsque le processeur est momentanément arrêté - vous ne remarquerez pas beaucoup de différence. Cependant, les économies d'énergie peuvent être considérables. Imaginez que votre processeur prenne des milliers de "micro-siestes" chaque fois qu'il est inactif.

Etats de la CPU-T (limitation)

Celles-ci ressemblent beaucoup aux "états C" (la même instruction HLT est utilisée), cependant la différence est que la régulation est "forcée par vous" (comme chaque cycle sur 4 est forcé d'être un cycle de sommeil, par opposition aux états "C" "ci-dessus qui sont automatiquement déterminés par la charge du système). Notez que la fréquence n'a PAS été changée ... voir les "états P" ci-dessous.

Etats de la CPU-P (performances)

De nos jours, de nombreux processeurs (notamment les ordinateurs portables) peuvent ralentir la fréquence d'horloge "à la volée". Cela s’ajoute à d’énormes économies d’énergie. Intel appelle cela "SpeedStep" et AMD, "Cool'n'Quiet" ou "PowerNow". Plus généralement, ces états sont appelés "états P". Vous devrez presque certainement aller dans le BIOS et activer cette fonction pour votre processeur en premier!

** Quelques repères de consommation: **

Quelles sont les économies d’énergie des états de la CPU ci-dessus? Les données suivantes sont extraites du site Web AMD. Considérez un processeur AMD 64 3400 +/2200 MHz avec 1 Mo de cache L2. À propos, pendant que je suis ici, laissez-moi me plaindre de la convention de dénomination AMD. Le nombre 3400+ ne signifie pas jack squat. C’est une façon pour AMD de dire que ce processeur "ressemble" à un Intel Pentium-4 fonctionnant à 3 400 MHz. Je suppose que c'est leur façon de ne pas perdre des parts de marché. Voici les valeurs de consommation d'énergie des états P et T (l'état C est la même instruction HLT que l'état T):

  • État de performance 0 (totalement actif) (2200 MHz): 89 watts
  • État de performance 1 (2000 MHz): 70 watts
  • État de performance 2 (800 MHz): 35 watts
  • Étranglé (instruction HLT): 2,2 watts

Quelques références pour en savoir plus

EDITS

[EDIT # 1]: En cherchant autour de moi, j'ai trouvé d'autres messages dans certains forums aussi (Le forum OpenSuse semble être pertinent pour ce que vous seek) et ont découvert que ce n'était pas un problème pour Linux comme pour Windows et en particulier dans le jeu. J'ai aussi creusé des informations dans deux mails ( le premier et le second [suivi] ) des listes de diffusion RedHat qui semblent liées. Je suis actuellement à la recherche de l'information qu'il contient.

[EDIT # 2]: J'ai un peu étudié le problème et je suis de plus en plus certain qu'il n'y a pas de mécanisme de stationnement fondamental dans Linux , à moins qu'il y ait un ACPI que je ne sache pas. Certaines découvertes intéressantes sont des logiciels permettant la manipulation directe de la CPU et des processus. lancez-le, comme cpuset , numactl et enfin, CPUfreq . Continuera mes recherches.

9
NlightNFotis

Il y a un article ici mentionnant que le stationnement de base se rapporte à la configuration des cœurs pour faire avancer les états intermédiaires afin d'économiser de l'énergie. Les états c sont définis avec l'instruction d'arrêt. Comme NlightNFotis le mentionne, cela est fait en utilisant le support de linux pour ACPI.

Vous pourrez peut-être obtenir plus d'informations sur les états dans lesquels vos cœurs sont placés par Linux avec le programme open source powertop (Sudo apt-get install powertop) écrit par Intel. Si votre matériel prend en charge divers états c, il devrait pouvoir vous dire le pourcentage de temps pendant lequel vos cœurs sont mis dans ces états à consommation réduite par Ubuntu Linux. . Voir ci-dessous. Plus le nombre est élevé, plus c-state est puissant.

Il fournit également beaucoup plus d'informations.

De même, comme Windows, quand il y a du travail à faire, Linux peut ajuster la fréquence d'exécution des cœurs en fonction de la demande, du désir d'économiser de l'énergie, etc.

Mon ordinateur portable ne prend pas en charge les états c, bien qu'il puisse être suspendu. Un peu Acer que nous avons avec un processeur Atom les prend en charge, comme vous pouvez le voir ci-dessous.

enter image description here

2
John S Gruber