直接从 CPU 读取TEMPERATURE_TARGET

Reading TEMPERATURE_TARGET directly from CPU

本文关键字:TEMPERATURE TARGET 读取 CPU      更新时间:2023-10-16

我想直接从我的英特尔 i7-5930k 中的TEMPERATURE_TARGET寄存器读取激活 TCC 的最低温度。英特尔的插座散热指南(http://www.intel.com/content/www/us/en/processors/core/core-i7-lga2011-3-tmsdg.html)表示,TEMPERATURE_TARGET寄存器中有一个软件可读字段。有没有办法读取此字段以使用命令行工具或编写一些代码来获取 Linux 中的绝对处理器温度?

这取决于操作系统。

在 Linux 上,您可以使用 rdmsr (读取模型) 读取它特定寄存器)

在 ubuntu 上,您可以尝试如下操作:

sudo apt-get install msr-tools
sudo modprobe msr
sudo rdmsr --bitfield 15:8 -c 0x00001a2
sudo rdmsr --bitfield 23:16 -c 0x00001a2

返回我的计算机上的0x120x69

解释

摘自热机械设计指南(第 20 页):

  1. 温度控制 (T_CONTROL ) 偏移: MSR (1A2h) TEMPERATURE_TARGET[15:8]
  2. TCC活化温度: MSR (1A2h) TEMPERATURE_TARGET[23:16]
  • 0x00001a2是注册号。
  • 第一个rdmsr命令读取"温度控制偏移"字段。
  • 第二个rdmsr命令读取字段TCC活化温度