На этих материнских платах BIOS предполагает определенную минимальную скорость вращения вентилятора (обычно 600-700 об/мин.), которая выше чем у моделей Noctua c PWM. В следствии этого, BIOS может интерпретировать низкие обороты как ошибку и попытаться запустить вентилятор на 100% в течении короткого периода времени, прежде чем вернуться к автоматическому управлению. Все это приводит к колебаниям в скорости вращения вентиляторов и ошибкам в консоли IPMI.
Ошибки вида:
- lover critical - going low - assertion;
- lower non-recoverable - going low assertion/deassertion.
Вентиляторы на этих платах контролируются в двух зонах:
- zone0 - Вентиляторы CPU или System, обозначенные цифрами (FAN1, FAN2 и.т.д.);
- zone1 - Вентиляторы периферийных зон, обозначенные буквами (FANA, FANB и.т.д.).
И имеют 4 режима регулировки скорости:
- Standard: BMC управляет обеими зонами, zone0 зависит от температуры CPU (target speed 50%), zone1 по температуре PCH (target speed 50%);
- Optimal: BMC контролирует zone1 (target speed 30%), при фиксированной скорости zone1 (fixed 30%);
- Full: Все вентиляторы работают на 100%;
- Heavy IO: BMC контролирует zone0 (target speed 50%), zone1 зафиксирована на (fixed 70%).
Эти уровни работы можно настраивать как с помощью IPMI в веб-интерфейсе, так и через ipmitool или ipmicfg в консоли.
Тонкая настройка через ipmitool:
Узнать текущий режим:
Со следующими обозначениями.
00 - Standard | 01 - Optimal | 02 - Full | 04 - Heavy IO
# ipmitool raw 0x30 0x45 0x00
Задать режим работы:
Можно с помощью следующих команд.
- Standard:
# ipmitool raw 0x30 0x45 0x01 0x00
- Full:
# ipmitool raw 0x30 0x45 0x01 0x01
- Optimal:
# ipmitool raw 0x30 0x45 0x01 0x02
- Heavy IO:
# ipmitool raw 0x30 0x45 0x01 0x04
Настройка скорости вращения для каждой зоны:
Значения м.б. (от 0x00 до 0x64), где 0x00 - минимальная скорость, 0x64 - полная скорость, 0x32 - 50% и т.д.
- <z> зона 0 или 1;
- <n> рабочая скорость;
# ipmitool raw 0x30 0x70 0x66 0x01 0x<z> 0x<n>
Пример:
Чтобы в течении нескольких минут настройки скорости не переопределились, необходимо установить режим "Full".
- CPU zone: 50%:
# ipmitool raw 0x30 0x70 0x66 0x01 0x00 0x32
- Peripheral zone: 50%
# ipmitool raw 0x30 0x70 0x66 0x01 0x01 0x32
Настройка пороговых значений (threshold):
Для выбранных вентиляторов.
- Вывести текущие значения:
# ipmitool sensor list all | grep FAN
- Получить состояние конкретного сенсора:
# ipmitool sensor get "CPU Temp"
# ipmitool sensor get "CPU Temp" | awk '/Sensor Reading/ {print $4,$8}'
- Справка по командам:
# ipmitool sensor thresh
# ipmitool sensor get
Пример: + модели вентиляторов Noctua
FAN1,4 - NF-A9 PWM | FAN2,3 - NF-A8 PWM | FANA - NF-F12 PWM
# ipmitool sensor thresh FAN1 lower 0 0 300
# ipmitool sensor thresh FAN2 lower 0 0 300
# ipmitool sensor thresh FAN3 lower 0 0 300
# ipmitool sensor thresh FAN4 lower 0 0 300
# ipmitool sensor thresh FANA lower 0 0 300
# ipmitool sensor thresh FAN1 upper 1600 1700 1800
# ipmitool sensor thresh FAN2 upper 1800 1900 2000
# ipmitool sensor thresh FAN3 upper 1800 1900 2000
# ipmitool sensor thresh FAN4 upper 1600 1700 1800
# ipmitool sensor thresh FANA upper 1100 1200 1300
Thresholds:
Виды пороговых значений.
- unr = upper non-recoverable = Минимальное значение выхода из строя.
- ucr = upper critical = Минимальное критическое значение.
- unc = upper non-critical = Минимальное некритическое значение.
- lnc = lower non-critical = Максимальное некритическое значение.
- lcr = lower critical = Максимальное критическое значение.
- lnr = lower non-recoverable = Максимальное значение выхода из строя.
В моем случае, достаточно было задать режим работы вентиляторов - "Standart" и переопределить пороговые значения "Threshold" на такие как в примере.
Ссылки по теме: