1. 实时获取CPU温度
在实际工作中,经常会对主机做一些压力测试,在测试过程中需要实时获取CPU和GPU温度,以便对硬件环境做一个整体的评估。实时获取CPU和GPU温度脚本如下:
#!/bin/bash
echo "start watch gpu and cpu temp..."
echo "start watch gpu temp" > /home/gpu_temp.log
echo "start watch cpu temp" > /home/cpu_temp.log
while true
do
sleep 5
gpu_temp=$(nvidia-smi -q -d TEMPERATURE | grep "GPU Current Temp")
echo $gpu_temp >> /home/gpu_temp.log
cpu_info=$(cat /sys/class/thermal/thermal_zone0/temp)
cpu_temp=$(expr $((cpu_info)) / 1000)
echo CPU: $cpu_temp >> /home/cpu_temp.log
done
如上,将获取的温度写入文件,方便测试完成后对其进行分析。
2. 提升CPU使用率
通常测试主机温度时,需要将CPU使用率拉高,然后测试CPU在最大使用率下的温度情况,从而分析出其散热情况。如下可以使用stress工具来拉升CPU的使用率:
stress --cpu 10 --timeout 300
使用10个进程拉升cpu使用率到100%,持续时间为300s