我试着用mpi和TensorFlow。例如,see this OpenAI baselines PPO code。它告诉我们运行以下命令:
$ mpirun -np 8 python -m baselines.ppo1.run_atari
我有一台安装了一个GPU(12GB内存)和Tensorflow 1.3.0和python3.5.3的机器。运行此代码时,出现以下错误:
^{pr2}$(这只是错误消息的第一部分;它非常长,但我认为开始部分是需要查看的重要部分。)
但是,如果我使用mpirun -np 1
运行,这个命令可以工作。在
我在网上搜索,发现一个repository from Uber,上面写着“要在一台有4个GPU的机器上运行”,我需要使用:
$ mpirun -np 4 python train.py
我只想确认一下mpirun -np X
意味着X
受到机器上gpu数量的限制,假设我们运行的是一个TensorFlow程序。在
在阅读了关于MPI的更多信息后,我可以确认是的,确实进程的数量受gpu数量的限制。理由:
mpirun -np X
命令将运行代码的X个“副本”(但每个副本都有自己的等级)。See the documentation here。在python tf_program1.py
和python tf_program2.py
都使用TensorFlow并且需要机器上的单独GPU时,不能同时运行python tf_program1.py
和{所以看起来我不得不使用一个过程。在
相关问题 更多 >
编程相关推荐