Table of Contents
Configurare frequency governor su compute node
Descrizione problematica
Le CPU dei compute node stanno operando a frequenze e idle state inadeguati a workload di produzione.
Da un'analisi su cloud-juno-nova03 (compute node dedicato a BIOPHYS) è emerso che le CPU non sono mai in idle state C0, ma sono sempre in C1 o addirittura C2 (che ha una transition latency di 100 ms) e che la frequenza a cui operano le CPU è 1.4 GHz invece dei 2.8 GHz previsti dalle specifiche.
Sarebbe opportuno configurare le macchine per disabilitare gli idle state C1 e C2 e forzare l'uso del governor performance per mantenere le CPU a 2.8 GHz.
Descrizione atttività
Per modificare a runtime la configurazione:
1. Verificare che il driver per cpufreq sia caricato: * CentOS 6 (AMD):
# modprobe powernow-k8
- CentOS 7 (AMD/generico):
# modprobe acpi_cpufreq
2. Utilizzare il frequency governor performance per forzare a 2.8 GHz la frequenza delle CPU:
# cpupower -c all frequency-set --governor performance
3. Disabilitare gli idle state C1 e C2:
Nota: le modifiche non sono persistenti
Problemi riscontrati e rollback
Il kernel di mycls* è troppo vecchio per cambiare la configurazione di C-states e cpufreq al volo. Al momento, non è il caso di applicare la modifica.
Eseguito rollback parziale dell'ottimizzazione su cloud-juno-nova13:
# cpupower -c all idle-set -E
Dopo aver riabilitato gli stati C1 e C2, i consumi elettrici sono tornati a 50W per alimentatore e le temperature sono scese di 20°C sulle CPU e circa 9°C sui sensori sulla motherboard.
Alla luce dello stress causato alle CPU, è bene non disattivare gli stati C1 e C2.