Arrêtez la surchauffe du processeur

Lorsque j’exécute des applications intensives telles que blender, mon processeur peut atteindre 80.CI peut manuellement désinstaller le processeur dans le BIOS, mais j’aimerais que mon ordinateur détecte lorsque la température du processeur devient trop élevée et ralentisse le processus jusqu’à ce que tout soit refroidi. Est-il possible de faire cela automatiquement ou même manuellement pour ralentir le processeur d’ubuntu?

Solution Intel Ubuntu 16.04+ pour Sandy Bridge et les processeurs plus récents

De ( wiki.debian.org -thermald ), Debian (Ubuntu) écrit sur thermald Un démon Linux pour refroidir les tablettes et les ordinateurs portables. Cela ne fonctionne que pour Sandy Bridge (2e génération) et les nouveaux cœurs Intel. Une fois que la température du système atteint un certain seuil, le démon Linux active diverses méthodes de refroidissement pour tenter de refroidir le système.

Le daemon thermique Linux (thermald) surveille et contrôle la température dans les ordinateurs portables, les tablettes PC avec le dernier pont Intel Sandy et les dernières versions de processeurs Intel. Une fois que la température du système atteint un certain seuil, le démon Linux active diverses méthodes de refroidissement pour tenter de refroidir le système.

Il fonctionne dans deux modes:

Mode de configuration zéro

  • Pour la plupart des utilisateurs, cela devrait suffire à maîsortingser la température du processeur du système. Ceci utilise le capteur de température DTS et utilise le pilote d’état Intel P, le pilote de pince d’alimentation, le contrôle de la limite de puissance moyenne et cpufreq comme méthodes de refroidissement.

Mode de configuration défini par l’utilisateur

  • Cela permet la configuration de style ACPI dans un fichier de configuration XML thermique. Cela peut être utilisé pour corriger la configuration ACPI buggy ou peaufiner en ajoutant plus de capteurs et de dispositifs de refroidissement. Il s’agit d’une première étape dans la mise en œuvre d’un contrôle thermique en boucle fermée en mode utilisateur et peut être amélioré en fonction des suggestions et commentaires de la communauté.

Comment installer

apt-get install thermald 

TLP

De Arch Linux :

TLP vous apporte les avantages d’une gestion de l’alimentation avancée pour Linux sans avoir à comprendre tous les détails techniques. TLP est livré avec une configuration par défaut déjà optimisée pour la vie de la batterie, vous pouvez donc l’installer et l’oublier. Néanmoins, TLP est hautement personnalisable pour répondre à vos besoins spécifiques.

Veuillez lire le lien complet Arch Linux TLP ci-dessus. Certains problèmes avec Nvidia nécessitent des modifications de configuration.

Après beaucoup d’essais et d’erreurs avec d’autres paquets, j’ai eu beaucoup de succès avec TLP. Il offre un contrôle supérieur du ventilateur et fonctionne parfaitement avec les états thermald et p .

Comme ces instructions d’installation pour Ubuntu 15.04+ mentionnent TLP, non seulement il réduit la surchauffe, mais il prolonge également la durée de vie de la batterie.

Depuis l’installation de TLP, Powerclamp (décrit ci-dessous) n’a plus jamais été appelé .


Intel Powerclamp

Le pilote Intel Powerclamp est défini ici ( kernel.org – Intel Power Clamp.txt ) et fait partie de thermald décrit ci-dessus. Un devis direct pour Powerclamp à partir du lien:

Prenons le cas où la consommation d’énergie d’un système doit être réduite au moment de l’exécution, en raison d’un budget énergétique, de contraintes thermiques ou du niveau de bruit, et où le refroidissement actif n’est pas préféré. La réduction de puissance passive gérée par logiciel doit être effectuée pour empêcher les actions matérielles conçues pour des scénarios catastrophiques.

Actuellement, les états P, les états T (modulation d’horloge) et le décalage de la CPU sont utilisés pour la régulation de la CPU.

Sur les processeurs Intel, les états C permettent de réduire efficacement la consommation d’énergie, mais jusqu’à présent, ils n’étaient utilisés que de manière opportuniste, en fonction de la charge de travail. Avec le développement du pilote intel_powerclamp, la méthode de synchronisation de l’injection inactive dans tous les threads de processeur en ligne a été introduite. L’objective est d’obtenir la résidence forcée et contrôlable dans l’État C.

Les tests / parsings ont été réalisés dans les domaines de la puissance, des performances, de l’évolutivité et de l’expérience utilisateur. Dans de nombreux cas, il est nettement plus avantageux de mettre le processeur hors ligne ou de moduler son horloge.


Comment savez-vous que Powerclamp fonctionne?

Powerclamp peut ne se manifester qu’une fois par an lorsque les ventilations de votre ventilateur reçoivent trop de poussière et de peluches. Alors, comment savez-vous qu’il fonctionne en arrière-plan? Utilisation:

 lsmod | grep intel 

Et vous devriez voir une liste semblable à ceci:

 btintel 16384 1 btusb bluetooth 520192 29 bnep,btbcm,btrtl,btusb,rfcomm,btintel intel_rapl 20480 0 intel_powerclamp 16384 0 (.... more intel drivers ....) snd 81920 18 snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_idt,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device 

Si vous voyez intel_rapl et intel_powerclamp vous savez que cela fonctionne et que vous attendez simplement que le temps dépasse intel_rapl intel_powerclamp


Powerclamp en action affiché par Conky

Voici une capture d’écran lorsque Powerclamp injecte des cycles de sumil:

Injection Kidie

Normalement, sur ce système, la vitesse d’horloge du processeur est de 2400 MHz à 3 400 MHz lorsque vous regardez une vidéo au format HTML5 et que 10 tabs de Google Chrome sont ouverts. En règle générale, l’utilisation du processeur est d’environ 9% à 12% sur 8 processeurs. Lorsque les choses deviennent trop chaudes ( 86 ° C ), Powerclamp entre en action et cela se produit:

  • La vitesse du processeur est réduite à 1200 Mhz.
  • L’utilisation du processeur atteint 80%. Ceci est trompeur car les 70% supplémentaires représentent le temps de sumil.
  • Les 9 principaux processus du processeur sont généralement 5 ou 6 processus Chrome, plus Xorg, Conky, Pulse Audio et un kworker occasionnel. Cependant, maintenant, 8 des 10 meilleurs sont le processus kidle_inject / xx va de 0 à 7. Pour les 8 premiers processeurs.

Le pilote Powerclamp s’exécute jusqu’à ce que le temps descende à nouveau en dessous de 85 ° C. Lorsque le pilote est en cours d’exécution, il est possible que vous ayez une pause dans la vidéo en une fraction de seconde et qu’il se peut que le clavier et la souris soient en une fraction de seconde.


Désactiver Intel Turbo Boost

À l’époque des “vieux vieux temps” d’Ubuntu 14.04, Intel Turbo Boost était en panne, la vitesse de mon processeur variait alors entre 1200 et 2400 Mhz. Après la mise à niveau vers Ubuntu 16.04, il passait à 3400 MHz (3,4 Ghz) car Turbo Boost fonctionnait enfin. Mais il a également augmenté la chaleur.

Pour désactiver Intel Turbo Boost, utilisez:

 echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo 

Solution à court terme dans ce scénario

Pour résoudre ce problème, j’ai sorti le placard ancien de l’ordinateur portable doté de deux ventilateurs, puis j’ai sauté sous l’ordinateur. Cette température a chuté à 63 ° C sous la même charge de travail.

La prochaine étape sera l’air comprimé dans les évents. Après cela, la dernière étape sera un nouveau radiateur de refroidissement avec des tuyaux pour le processeur et le processeur graphique. Une bonne pâte thermique telle que l’Arctic Silver 5 est également nécessaire dans cette opération. Un nouveau ventilateur a déjà été installé l’année dernière et semble fonctionner correctement.

Mise à jour du 25 janvier 2017

Purgez les évents des ventilateurs avec de l’air comprimé et les températures tombent de 63 ° C à 56 ° C. Ceci utilise toujours le pad de refroidissement pour ordinateur portable.

Mise à jour du 06 août 2017

Nous utilisons TLP (décrit ci-dessus) depuis plusieurs mois maintenant, les températures sont stables autour de 50 ° C et les performances des ventilateurs sont optimales.


Attention aux trop nombreux pilotes de contrôle de ventilateur

Parce que c’est un Dell, j’avais installé le moniteur / contrôleur de ventilateur I8K dans l’espoir d’accélérer le fonctionnement du ventilateur plus tôt et plus rapidement. Lorsque je tape des sensors je reçois:

 $ sensors dell_smm-virtual-0 Adapter: Virtual device Processor Fan: 3963 RPM CPU: +63.0°C Ambient: +49.0°C GPU: +54.0°C Other: +79.0°C acpitz-virtual-0 Adapter: Virtual device temp1: +27.8°C (crit = +106.0°C) temp2: +29.8°C (crit = +106.0°C) coretemp-isa-0000 Adapter: ISA adapter Physical id 0: +65.0°C (high = +87.0°C, crit = +105.0°C) Core 0: +65.0°C (high = +87.0°C, crit = +105.0°C) Core 1: +64.0°C (high = +87.0°C, crit = +105.0°C) Core 2: +63.0°C (high = +87.0°C, crit = +105.0°C) Core 3: +57.0°C (high = +87.0°C, crit = +105.0°C) 

Ignorer les temps virtuels, ils sont dehors pour le déjeuner . Sous Ubuntu 14.04, ils étaient exacts et j’utilisais temp 1 dans l’affichage Conky. Après la mise à niveau vers Ubuntu 16.04, je devais me référer à une troisième température non affichée sur cet écran. Pour voir le temps réel, vous pouvez utiliser cette commande:

 $ cat /sys/class/thermal/thermal_zone*/temp 27800 29800 62000 

Quand je tape:

 $ lsmod |grep dell dell_wmi 16384 0 sparse_keymap 16384 1 dell_wmi dell_laptop 20480 0 dell_smbios 16384 2 dell_wmi,dell_laptop dcdbas 16384 1 dell_smbios dell_smm_hwmon 16384 0 wmi 16384 1 dell_wmi video 40960 3 dell_wmi,dell_laptop,i915 

Je vois le module / pilote du kernel dell_smm_hwmon . Lorsque je recherche sur Google ce pilote et que les utilisateurs de I8K signalent que les deux pilotes provoquent un I8K du système pendant une fraction de seconde toutes les 10 secondes environ. J’avais ce problème moi-même alors j’ai dû supprimer le contrôle du ventilateur I8K .

Il existe de nombreux autres utilitaires et méthodes de refroidissement, mais cela devient TL; DR .

J’ai créé un programme juste pour ce problème. Limitez votre CPU en fonction de la température souhaitée. Cela fonctionne comme ceci:

 sudo ./temp_throttle.sh 80 

Cette commande ralentira les cœurs de votre processeur lorsqu’ils atteindront 80 degrés Celsius. Lorsque la température baisse, les cœurs de la CPU pourront à nouveau fonctionner plus rapidement. Vous pouvez trouver temp_throttle ici .


Pour lancer le script principal au démarrage avec sudo et entrer le mot de passe dans gnome-terminal, vous pouvez créer un petit script:

 #!/bin/bash cd "/path/to/the/directory/temp-throttle-stable/" gnome-terminal -e 'sudo ./temp_throttle.sh 80' --geometry=45x15 --hide-menubar --profile=hold 

( --geometry=45x15 ouvre un petit écran de terminal; --profile=hold utilise un profil de terminal gnome appelé “hold” qui doit déjà être créé avec l’option “Lorsque la commande se --profile=hold le terminal ouvert”, --hide-menubar cache les menus pour cette fenêtre)

Après l’avoir rendu exécutable, ce petit script (appelons-le temp_throttle_80.sh ) peut ensuite être ajouté à la liste de démarrage et il vous sera demandé de saisir un mot de passe au démarrage. alors, si la température mentionnée est atteinte, son action est rapscope:

entrez la description de l'image ici

vous pouvez limiter la fréquence du processeur, de manière à réduire la fréquence et à contrôler la chaleur du processeur.

 cpufreq-selector -f