🛠 Surveiller la thermique big.LITTLE et piloter les fréquences CPU

Orange Pi 5 Plus (Rockchip RK3588) · avance · Schéma : IMG-orangepi-5-plus-avance-2-opi5p-surveillance-thermique.svg — Orange Pi 5 Plus avec jauge de température, cœurs Cortex-A76 et Cortex-A55 séparés, courbe de fréquence sous stress et ventilateur PWM 5 V

Objetivos

Supervisar la temperatura y la frecuencia de los 8 núcleos big.LITTLE del RK3588 (4 Cortex-A76 hasta 2,4 GHz + 4 Cortex-A55 hasta 1,8 GHz), comprender la política térmica del device-tree mainline (ventilador activado a 55 °C, velocidad máxima a 65 °C, umbral package_thermal) y elegir un gobernador de frecuencia. La placa no tiene un rango de temperatura oficial publicado: se espera refrigeración activa (conector de ventilador PWM de 5 V o disipador) bajo carga sostenida.

Hardware

Código completo

# 1. Températures en continu (une ligne par zone thermique)
watch -n1 'paste <(cat /sys/class/thermal/thermal_zone*/type 2>/dev/null) \
                <(cat /sys/class/thermal/thermal_zone*/temp 2>/dev/null)'

# 2. Fréquences par policy cpufreq (une policy par cluster big.LITTLE)
for p in /sys/devices/system/cpu/cpufreq/policy*; do
  echo "$(basename $p) : $(cat $p/scaling_cur_freq) Hz  (max $(cat $p/cpuinfo_max_freq))"
done

# 3. Gouverneurs : performance en bench, powersched/ondemand au quotidien
sudo apt install -y linux-cpupower
sudo cpupower frequency-set -g performance
cat /sys/devices/system/cpu/cpufreq/policy*/scaling_governor

# 4. Stress 8 cœurs pendant 60 s et observation du throttling
sudo apt install -y stress-ng
stress-ng --cpu 8 --timeout 60s &
for i in $(seq 1 12); do
  paste <(cat /sys/class/thermal/thermal_zone*/temp) \
        <(cat /sys/devices/system/cpu/cpufreq/policy*/scaling_cur_freq)
  sleep 5
done

# 5. Seuils thermiques déclarés par le device-tree
sudo apt install -y lm-sensors && sensors
paste <(cat /sys/class/thermal/thermal_zone*/type) \
      <(cat /sys/class/thermal/thermal_zone*/trip_type 2>/dev/null)

Verificación esperada

En reposo: 30–50 °C. Bajo stress-ng, las frecuencias suben (hasta 2 400 000 kHz en el clúster A76, 1 800 000 kHz en el clúster A55) y luego la temperatura aumenta hacia los umbrales de 55/65 °C donde el ventilador integrado acelera; en caso de saturación, scaling_cur_freq cae por debajo del máximo (throttling visible en el bucle).

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales