为Tensorflow自动分配CUDA设备
我在一台计算机中有多个相同的CUDA设备。我在那台计算机上运行了多个tensorflow训练实例,每个实例都使用一个且仅使用一个CUDA设备。我想自动为tensorflow实例分配一个且只有一个CUDA设备,以免费的为准。我希望在tensorflow训练实例启动时这样做。目前,我通过检查可用性并更改每个tensorflow培训实例开头的代码来手动执行此操作:为Tensorflow自动分配CUDA设备,tensorflow,cuda,Tensorflow,Cuda,我在一台计算机中有多个相同的CUDA设备。我在那台计算机上运行了多个tensorflow训练实例,每个实例都使用一个且仅使用一个CUDA设备。我想自动为tensorflow实例分配一个且只有一个CUDA设备,以免费的为准。我希望在tensorflow训练实例启动时这样做。目前,我通过检查可用性并更改每个tensorflow培训实例开头的代码来手动执行此操作: os.environ["CUDA_VISIBLE_DEVICES"] = "0" 如何将第一个(任何)未使用的CUDA设备自动分配给te
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
如何将第一个(任何)未使用的CUDA设备自动分配给tensorflow培训实例?这意味着在上述代码中,运行时应将
“0”
更改为“1”
,“2”
等。您只需要一个GPU调度程序,以下是一个:
我假设你用不同的参数运行同一个模型,对吗?因此,示例命令可以是:
simple_hypersearch "python3 train_dnn.py --lr {lr} --batch_size {bs}" -p lr 0.001 0.0005 0.0001 -p bs 32 64 128 | simple_gpu_scheduler --gpus 0,1,2