import pynvml
import time
colors = {
'green': '\033[92m',
'yellow': '\033[93m',
'red': '\033[91m',
'blue': '\033[94m',
'b_red': '\033[31m',
'reset': '\033[0m'
}
def change(old_t, new_t):
if old_t == 0:
return "————"
wc = new_t - old_t
if wc > 0:
return f"{colors['b_red']}+{wc}{colors['reset']}"
elif wc < 0:
return f"{colors['blue']}{wc}{colors['reset']}"
else:
return "0"
def get_color(t):
if t <= 60:
return colors['green']
elif t < 80:
return colors['yellow']
else:
return colors['red']
def gpu_temp():
pynvml.nvmlInit()
handle = pynvml.nvmlDeviceGetHandleByIndex(0)
old = 0
try:
while True:
new = pynvml.nvmlDeviceGetTemperature(handle, pynvml.NVML_TEMPERATURE_GPU)
temp_color = get_color(new)
ftime = time.strftime("%H:%M:%S", time.localtime())
print(
f"{ftime} {temp_color}温度:{new}摄氏度{colors['reset']}\t温度差:{change(old, new)}")
old = new
time.sleep(1)
finally:
pynvml.nvmlShutdown()
if __name__ == "__main__":
gpu_temp()
11-20
9181

03-07
3205
