Je voudrais lire directement le tempéré minimum auquel le TCC sera activé à partir du registre TEMPERATURE_TARGET dans mon Intel i7-5930k. Le Guide Thermal Socket (http://www.intel.com/content/www/us/en/processors/core/core-i7-lga2011-3-tmsdg.html) d'Intel indique qu'il existe un champ lisible par logiciel dans le registre TEMPERATURE_TARGET. Existe-t-il un moyen de lire ce champ pour obtenir la température absolue du processeur sous Linux en utilisant un outil de ligne de commande ou un code?Lecture TEMPERATURE_TARGET directement à partir du CPU
Répondre
Cela dépend du système d'exploitation.
Sur linux, vous pouvez le lire à l'aide rdmsr
(lire modèle registres spécifiques)
Sur ubuntu, vous pouvez essayer quelque chose comme ce qui suit:
sudo apt-get install msr-tools
sudo modprobe msr
sudo rdmsr --bitfield 15:8 -c 0x00001a2
sudo rdmsr --bitfield 23:16 -c 0x00001a2
retours 0x12
et 0x69
sur ma machine.
Explication
De l'Thermal Mechanical Design Guidelines (page 20):
- contrôle de la température (T_CONTROL) Offset: MSR (1A2h) TEMPERATURE_TARGET [15: 8]
- TCC Activation Température: MSR (1A2h) TEMPERATURE_TARGET [23:16]
0x00001a2
est le numéro de registre.- La première commande
rdmsr
lit le champ Décalage de la régulation de température. - La deuxième commande
rdmsr
lit le champ TCC Activation Temperature.
Tout le guide de base extrême est (page 29) 'Bit Attrib Description par défaut 31:16 RSVD-P 0000h Réservé - Protégé 15: 0 R0-V 0000h THERM_MARGIN - Ce champ fournit au microprogramme de plate-forme une moyenne mobile de la marge de température instantanée au-dessus de Tspec en complément de 2 8.8 format. Note - DTS 2.0 Thermal Margin CSR est un miroir de MSR (1A1h) PACKAGE_THERM_MARGIN ' cela ferait la commande sudo rdmsr --bitfield 15: 0 -c 0x00001a1? Pour cela je reçois CPU 0 ne peut pas lire MSR 0x00001a1 –
@LeonLewis Avez-vous essayé 'sudo rdmsr --bitfield 15: 0 -c 0x0000000'? – sergej
Ramène 0x0 –
Quel système d'exploitation utilisez-vous? –