web-dev-qa-db-fra.com

intel_powerclamp: Démarrer / arrêter l'injection au ralenti forcé

Je ne sais pas vraiment quand tout a commencé. Je venais de passer de 13h10 à 14h04 et j'étais sur le point de faire quelque chose au sujet des performances graphiques (unité paraissait lente). Cette situation durait déjà depuis 6 mois. J'attachais une attention particulière aux pilotes propriétaires de nvidia en configuration de configuration sli ... J'étais sérieusement énervé par nvidia, l'unité et j'étais sur le point d'opter pour quelque chose de non lié à l'unité. .

Puis j’ai découvert moins d’une heure avant de tuer ubuntu/unit ...

C'est quelque chose lié à intel_pstate ...

J'ai simplement remarqué que, lors de la connexion, les performances sont fantastiques ... à la fois cpu et gpu ... Comme un rêve ... Puis, après environ 10 secondes, ils tombent et la situation devient laide ... J'ai chassé les bûches et l'ai trouvé dans syslog, il semble être lié à cette ligne:

Apr 28 21:29:41 b4da55 kernel: [ 83.861621] intel_powerclamp: Start idle injection to reduce power

Après cette ligne, les performances ont disparu. La session que j'ai avec celle-ci en écrivant cet article est quelque peu différente ... Je cherchais comment ajuster ou désactiver cette injection inactive (du moins pendant que je travaille sur un secteur, pas sur des batteries) pour obtenir des performances maximales, mais rien ... Ensuite, c'est arrivé seul, cette ligne apparaît dans syslog:

Apr 28 21:46:03 b4da55 kernel: [  362.386585] intel_powerclamp: Stop forced idle injection

Je ne sais pas ce qui l'a causé ... Mais maintenant, ça marche à merveille! C'est tellement lisse ... Je ne peux pas croire ... Je suppose que le rendu est supérieur à 100 images par seconde ... J'ai activé l'effet de fenêtre tremblotante et je me suis amusé ... htop montre une utilisation beaucoup moins importante du processeur alors que je ne fais rien. ..

Quelqu'un peut-il me dire comment je peux contrôler cette injection d'inactivité?

7
user222164

Avertissement: vérifiez la température de votre CPU. Sur mon système, l'injection inactive ne commence que lorsque la situation devient chaude. Le système d'exploitation protège le matériel contre la surchauffe.

Voir intel_powerclampmanuel . Il a la section "Utilisation et interfaces" qui décrit comment le contrôler.

TL; DR Sudo rmmod intel_powerclamp, mais vous avez été prévenu.

Des moyens plus doux pour contrôler la chose existent.

Tout d’abord, localisez l’abstrait "dispositif thermique" correspondant à la consommation électrique boucle de régulation :

# grep -l intel_powerclamp /sys/class/thermal/cooling_device*/type
/sys/class/thermal/cooling_device11/type

# cd /sys/class/thermal/cooling_device11

Maintenant, le pourcentage de "ralentissement" de la boucle de contrôle peut être ajusté:

# echo 25 > cur_state

Il est possible de mettre 0 là. Un pourcentage supérieur à 50 n'est pas autorisé.


Ce serait bien si quelqu'un proposait une applet permettant de contrôler cet appareil facilement (c'est-à-dire si quelqu'un ajoutait les contrôles utilisateur généraux évidemment nécessaires), éventuellement avec des règles (AC/batterie, heure de la journée, écran inactif, etc.).

7
ulidtko

Dans le système en cours d'exécution, vous pouvez vous débarrasser de intel_powerclamp:

Sudo rmmod intel_powerclamp

Pour le désactiver de manière permanente et empêcher le chargement complet, procédez comme suit:

cd /etc/modprobe.d
Sudo su
echo install intel_powerclamp /bin/true  >intel_powerclamp.conf

Ensuite, après un redémarrage, il ne reviendra pas.

4
Ingo