Je ne sais pas quand ce problème a commencé à se produire, c'était peut-être depuis le moment où j'ai installé Ubuntu (16.04, frais). J'observais qu'Ubuntu était inhabituellement lent, l'environnement était instable et l'utilisation du processeur était élevée même lorsqu'il était inactif, au début, je pensais qu'un programme le ralentissait.
Après un certain temps, j'ai compris ce qui en était la cause, la fréquence du processeur est réglée sur 800 MHz, sans arrêt, quelles que soient les circonstances. La fréquence maximale est censée être 3100 MHz avec Turbo-boost et 2000 MHz généralement. J'ai délibérément réglé l'utilisation du processeur (sur les 4 threads sur 2 cœurs) à 100% en faisant en sorte que Blender rende certaines choses sur le processeur, il reste toujours à 800 MHz.
J'ai essayé de définir un profil de performances maximales, mais il reste faible. J'ai testé la température, elle semble être de 60 ° C tout le temps, quand 87 ° C est considéré comme élevé et 105 ° C critique. Je fonctionne tout le temps sur secteur, la batterie ne semble pas se recharger depuis un certain temps.
Voici ce que rapporte cpufreq-info:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 0.97 ms.
hardware limits: 800 MHz - 3.10 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 2.00 GHz and 3.10 GHz.
The governor "performance" may decide which speed to use
within this range
current CPU frequency is 800 MHz (asserted by call to hardware).
Il en va de même pour les 3 autres CPU.
Voici ce que lscpu rapporte:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 2
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 58
Model name: Intel(R) Core(TM) i7-3537U CPU @ 2.00GHz
Stepping: 9
CPU MHz: 799.921
CPU max MHz: 3100,0000
CPU min MHz: 800,0000
BogoMIPS: 3990.99
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 4096K
NUMA node0 CPU(s): 0-3
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts
En mode d'économie d'énergie, il se comporte de manière identique. Si je déconnecte l'alimentation secteur et que je fonctionne sur batterie, la fréquence du processeur monte en flèche à 2800 MHz, il semble donc que ce soit un problème uniquement sur l'alimentation secteur (ce qui est tout à fait le contraire de ce qu'il est censé faire).
J'ai essayé de modifier les profils de processeur, j'ai essayé de désactiver la mise à l'échelle des fréquences ( Comment puis-je désactiver la mise à l'échelle des fréquences du processeur et définir les performances du système? ), J'ai essayé de définir la mise à l'échelle_min_freq dans / sys / devices / system / cpu / cpu [0-3] / cpufreq à une valeur plus élevée, mais aucun d'eux n'a rien fait. La fréquence reste minimale.
Le type de processeur est un processeur Intel (R) Core (TM) i7-3537U à 2,00 GHz, l'ordinateur est Dell Inspiron 15z Touch.
J'ai également un problème avec la batterie qui ne se charge pas même si l'ordinateur est alimenté par l'adaptateur secteur.
Plus de diagnostics:
$ sudo rdmsr --bitfield 15:8 -d -a 0x198
8
8
8
8
$ sudo rdmsr --bitfield 15:8 -d -a 0x199
9
8
9
9
Dans le cas de 0x199, les numéros 8 et 9 semblent être permutés de façon aléatoire entre les appels consécutifs.
la source
sudo rdmsr --bitfield 15:8 -d -a 0x198
etsudo rdmsr --bitfield 15:8 -d -a 0x199
et ajouter la sortie à votre question. Remarquerdmsr
est fournie par le packagemsr-tools
et nécessite que le module msr soit chargé en premier viasudo modprobe msr
.cat /sys/devices/system/cpu/cpufreq/policy0/bios_limit
?Réponses:
Il s'est avéré que ce problème n'était pas lié au pilote intel_pstate, car acpi_cpufreq, l'autre pilote, a signalé de meilleures valeurs mais ne les a jamais définies. L'OS n'avait probablement aucun contrôle sur cela.
Il s'agit d'un problème qui se produit avec certains ordinateurs portables Dell lorsque la charge est interrompue de manière à ce que l'ordinateur portable soit alimenté en courant alternatif mais pas chargé. La résolution du problème matériel supprime le problème. Dans ce cas, c'était un morceau de tissu presque invisible dans le connecteur d'alimentation qui empêchait le contact électrique.
la source
Charger Behavior
etAdapter Warnings
. Retirez et retournez la pâte. Également sous Windows, mais mis en profil haute performance. Et récupéré mon CPU et obtenu 2500 MHz. Il est donc possible de surmonter le problème sans remplacement.Cela mettra votre fréquence CPU à la vitesse maximale à partir de n'importe quel terminal:
Modifiez le fichier /etc/init.d/ondemand pour l'ajouter définitivement. ondemand est utilisé pour modifier votre fréquence lors de la connexion. La valeur par défaut est le gouverneur «ondemand». En d'autres termes, vous commencez à 800 MHz et montez au besoin.
la source
J'ai eu le même problème - le processeur freq coincé dans ubuntu ainsi que dans les fenêtres, après un arrêt surchauffé dans la mallette de transport avec l'ordinateur portable toujours sous tension.
Je suis allé au BIOS, et désactivé la gestion de l'alimentation du processeur en "puissance", et j'ai mis tout le reste à plein régime (performances maximales). Redémarré, de retour à pleine vitesse, puis de nouveau au BIOS, et à nouveau activé la gestion du processeur, et corrigé les autres paramètres que j'ai modifiés auparavant. Et voilà!
EDIT: Il s'avère que c'est un problème de batterie. Si la batterie est vraiment faible, le processeur n'accélèrera pas (je suppose pour économiser de l'énergie). Sur mon Thinkpad, je dois charger la batterie pendant quelques minutes, jusqu'à ce que le voyant de charge cesse de clignoter rapidement AVANT de rallumer la machine.
la source
Parfois, mon ordinateur portable ignore complètement les paramètres cpufreq. J'ai trouvé cela fonctionne:
Débranchez le cordon d'alimentation et rebranchez-le. Fixé :)
Je suppose que la raison en est que la machine est devenue confuse: elle pense qu'elle est sur batterie, et elle pense que la batterie est faible, donc elle sous-charge le CPU pour économiser de l'énergie.
Nous devons simplement lui faire savoir qu'il est en fait branché et qu'il fonctionne bien.
(Ordinateur portable Asus x453m ici, Ubuntu 14.04) YouTube: Avez-vous essayé de l'éteindre et de le rallumer?
la source
J'ai eu le même problème avec mon ThinkPad T520. Après avoir essayé toutes les solutions trouvées sur Internet, j'étais prêt à réinstaller Ubuntu. Mais ensuite, j'ai vérifié la fréquence du processeur dans Windows et je l'ai trouvée limitée à 800 MHz également.
Cela ressemblait donc à un problème matériel. Il n'était pas évident qu'il y ait des problèmes de refroidissement du processeur, car les RPM plus froids étaient faibles et le boîtier de l'ordinateur portable n'était ni chaud ni même chaud.
Puisqu'il n'y avait aucune autre option de toute façon, j'ai démonté l'ordinateur portable et changé l'interface thermique en puces CPU et GPU. Et tu sais quoi? Ça m'a aidé!
Les tests unitaires sur l'un de mes projets Django duraient 45 minutes, maintenant c'est 11 minutes.
Donc, si vous rencontrez le même problème, en particulier sur un ordinateur portable - c'est probablement parce que l'interface thermique du stock séché - après 3-5 ans, il cesse souvent de faire son travail. Et ne vous laissez pas berner par le radiateur propre, la glacière silencieuse et le corps d'ordinateur portable cool.
la source
Solution de contournement
la source
Parfois, il ne s'agit pas uniquement de définir le régulateur de mise à l'échelle. Les stratégies de mise à l'échelle sont parfois définies entre MIN_FREQ et MIN_FREQ. J'ai dû écrire un script pour tout régler en une seule fois:
la source