aboutsummaryrefslogtreecommitdiff
path: root/articles/2021/Mise-à-jour-sur-la-régulation-du-processeur.html
blob: 54d766e09f33b464fbe9d954b19c8f0cffdfb6cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<!doctype html>
<html lang="EN">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="/style.css">
    <title>Bloggings</title>
  </head>
  <body>
    <header>
      <h1>Bloggings</h1>
      <a href="/index.php">Back</a>
      
    </header>
    
<main>
<article>
<h2>Mise à jour sur la régulation du processeur</h2>
<h3>2021-05-15</h3>
<h3>Old article, I now use tlp,tlp-gui and cpupower</h3>
<p>Mise à jour sur la régulation du processeur pour limiter les problèmes de température</p>
<p>Depuis le <a href="https://wiki.archlinux.org/title/CPU_frequency_scaling#Make_changes_permanent">Arch Linux Wiki</a>:</p>
</p> 
<p>Le processeur de mon Thinkpad X220 est un Intel i5-2520M (4) @ 3,200GHz, 
je ne dois donc pas utiliser le module acpi-cpufreq, mais le module intel-pstate intégré.</p> 
<p><i>Note : Le pilote intel_pstate 
ne prend en charge que deux gouverneurs : powersave et performance. 
Bien qu'ils partagent le même nom que les gouverneurs génériques, 
ils ne fonctionnent pas de la même manière que ces derniers. Les deux 
gouverneurs intel_pstate fournissent une mise à l'échelle dynamique 
similaire à celle des gouverneurs génériques schedutil ou ondemand. 
Le gouverneur de performance fourni par intel_pstate devrait donner une 
meilleure fonctionnalité d'économie d'énergie que l'ancien gouverneur à la
demande.</i></p>
</p>J'ai donc installé cpupower en plus de 
<a href="2021.html#intel-thermald">thermald</a>:</p>
<code>sudo pacman -S cpupower cpupower-gui
sudo systemctl enable cpupower
sudo systemctl start cpupower
</code>
<p>Pour activer pstate au demarrage j'ai ajouté</p>
<code>GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=active ...</code>
<p>dans /etc/default/grub et lancé sudo update-grub.</p>
<p>J'ai aussi edité /etc/default/cpupower avec:</p>
<code>governor='performance'
max_freq="3.2GHz"
</code>
<h4>Le script:</h4>
<code>#!/bin/sh
# mettre le gouverneur en mode powersave s'il est déconnecté du secteur.
ACPI=`acpi -a | cut -d ' ' -f 3`
if [ "$ACPI" == "off-line" ] ; then
   cpupower frequency-set -g powersave;
else
   cpupower frequency-set -g performance ;
fi
</code>
<h4>Créer un regle UDEV</h4>
<code>/etc/udev/rules.d/99-power.rules</code>
<code>ACTION=="change",SUBSYSTEM=="power_supply",RUN+="/usr/bin/bash
/home/philip/.local/bin/power-adapt"</code>
<p>Aussi, lorsque on reboot en batterie, le default est "performance", donc
créer un service systemd pour lancer power-adapt au boot</p>
<code>/etc/systemd/system/power-adapt.service</code>
<code>
[Unit]
Description=your description
[Service]
ExecStart=/home/philip/.local/bin/power-adapt
[Install]
WantedBy=multi-user.target
</code>
<p> et l'installer</p>
<code>sudo systemd enable power-adapt.service</code>
</article>
</main>
<footer>
<p>&nbsp;</p><p>§</p></footer>
</body></html>