2016-05-23 3 views
1

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

+2

Quel système d'exploitation utilisez-vous? –

Répondre

2

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):

  1. contrôle de la température (T_CONTROL) Offset: MSR (1A2h) TEMPERATURE_TARGET [15: 8]
  2. 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.
+0

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 –

+0

@LeonLewis Avez-vous essayé 'sudo rdmsr --bitfield 15: 0 -c 0x0000000'? – sergej

+0

Ramène 0x0 –