#参数:nvidia_ids:显卡id min_memory:最小可用显存 GBdefwatch_nvidia(nvidia_ids,min_memory):
flag =[1for i in nvidia_ids]for i in nvidia_ids:
handle = pynvml.nvmlDeviceGetHandleByIndex(i)
meminfo = pynvml.nvmlDeviceGetMemoryInfo(handle)#遍历每块卡的剩余显存print("card {} free memory is {}GB".format(i,meminfo.free *1.0/(1024**3)))if meminfo.free *1.0/(1024**3)> min_memory:
flag[i-1]=0else:
flag[i-1]=1#统计符合要求的卡的数量if0in flag:
free_num =0for i in flag:if i ==0:
free_num +=1return free_num#返回符合要求的卡的数量else:print("no free card!")return-1
文章目录1.watch_nvidia2.send_msg3.完整脚本前期准备:pip install pynvml1.watch_nvidia#参数:nvidia_ids:显卡id min_memory:最小可用显存 GBdef watch_nvidia(nvidia_ids,min_memory): flag = [1 for i in nvidia_ids] for i in nvidia_ids: handle = pynvml.nvmlDeviceGetHand