Считывание температуры процессора в CentOS

Материал из Wikipedia PC-SUPP
Перейти к: навигация, поиск

Установка

Утилита называется sensors, она показывает температуру по каждому ядру процессора. Входит в пакет lm_sensors.

yum install lm_sensors

Для её работы потребуется установить модуль ядра, который может считывать информацию с температурных датчиков ядер. Его потребуется установить из репозитория elrepo.

Устанавливаем репозиторий:

rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://elrepo.org/elrepo-release-6-4.el6.elrepo.noarch.rpm
 

Устанавливаем модуль coretemp:

yum --enablerepo=elrepo install kmod-coretemp
modprobe coretemp

Запуск

Запускаем утилиту обнаружения сенсоров, на все задаваемые вопросы жмём enter:

sensors-detect

Запускаем утилиту sensors:

sensors

coretemp-isa-0000
Adapter: ISA adapter
Core 0: +27.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0001
Adapter: ISA adapter
Core 1: +29.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0002
Adapter: ISA adapter
Core 2: +31.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0003
Adapter: ISA adapter
Core 3: +29.0°C (high = +74.0°C, crit = +94.0°C)

Утилита вывела температуру по каждому ядру процессора. Вывод можно упростить, используя команду grep Core:

sensors | grep Core

Пример

Четырёхъядерный Xeon E3-1230 оказался весьма холодным без нагрузки. Теперь надо посмотреть, насколько он нагреется под нагрузочным тестом. Я использовал утилиту stress, которая есть в репозитории DAG.

 
rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/stress-1.0.4-4.el6.x86_64.rpm
 

Запустим например с такими параметрами:

stress --cpu 8 --vm 2 --vm-bytes 128M

Здесь создаётся 8 процессов, нагружающих процессор и 2 процесса непрерывно создающих и удаляющих блоки по 128МБ в оперативной памяти.
Откроем вторую консоль и проследим за динамикой роста температуры:

watch 'sensors | grep Core'

Спустя час после запуска утилиты нагрузочного тестирования сенсоры показывают такой результат:

Every 2.0s: sensors | grep Core Mon Dec 4 04:27:01 2011

Core 0: +61.0°C (high = +74.0°C, crit = +94.0°C)
Core 1: +63.0°C (high = +74.0°C, crit = +94.0°C)
Core 2: +66.0°C (high = +74.0°C, crit = +94.0°C)
Core 3: +60.0°C (high = +74.0°C, crit = +94.0°C)