1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#!/bin/bash
sudo ipmitool mc info
#Number of GPU
declare -i NbGPU=$(nvidia-smi -L |grep -c 'GPU')
echo "NbGPU=$NbGPU"
while [ true ]; do
for ((x=0;x<$NbGPU;x++))
do
echo "GPU ID=$x"
#Information about GPU
nvidia-smi -i $x
echo
declare -i TempGPU=$(nvidia-smi -i $x |awk -v ligne=10 ' NR == ligne {print $3}' |awk 'sub(".$","")')
echo "Temp GPU $x = $TempGPU"
if [ $TempGPU -ge 40 ] && [ $TempGPU -lt 55 ]; then
echo "sup 40 and inf 55"
sudo ipmitool raw 0x30 0x27 0x00 0x28
sudo ipmitool raw 0x30 0x27 0x01 0x28
sudo ipmitool sensor list all |grep FAN
elif [ $TempGPU -ge 55 ] && [ $TempGPU -lt 70 ]; then
echo "sup 55 and inf 70"
sudo ipmitool raw 0x30 0x27 0x00 0x3C
sudo ipmitool raw 0x30 0x27 0x01 0x3C
sudo ipmitool sensor list all |grep FAN
elif [ $TempGPU -ge 70 ]; then
echo "sup 70"
sudo ipmitool raw 0x30 0x27 0x00 0x40
sudo ipmitool raw 0x30 0x27 0x01 0x40
sudo ipmitool sensor list all |grep FAN
else
echo "less than 40"
sudo ipmitool raw 0x30 0x25
sudo ipmitool sensor list all |grep FAN
fi
sleep 5s
done
done |
Partager