in route.py [0:0]
def usegpu(need_gpu_count=1):
nouse=[]
for index in range(pynvml.nvmlDeviceGetCount()):
# 这里的0是GPU id
handle = pynvml.nvmlDeviceGetHandleByIndex(index)
meminfo = pynvml.nvmlDeviceGetMemoryInfo(handle)
used= meminfo.used/meminfo.total
if used<0.3:
nouse.append(index)
if len(nouse)>=need_gpu_count:
os.environ["CUDA_VISIBLE_DEVICES"] = ','.join(map(str, nouse[:need_gpu_count]))
# return nouse[:need_gpu_count]
print(nouse[:need_gpu_count])
return need_gpu_count
elif len(nouse)>0:
os.environ["CUDA_VISIBLE_DEVICES"] = ','.join(map(str, nouse))
return len(nouse)
else:
return 0