ubuntu服务器同时不能运行2个模型~~附代码
收藏
运行环境:实验室服务器是4tian xp,安装ubuntu 16.04 同时运行的多个docker 容器,paddle版本是paddle-gpu 1.2.0 .post97 ,远程用pycharm运行
遇到问题:编写的unet网络,然后在CPUPlace下可以运行,CUDAPlace模型下,如果gpu其中一块有一块运行就报错
paddle.fluid.core.EnforceNotMet: Enforce failed.
如果4块显卡均没有运行程序的话,paddle代码可以正常运行的
CUDAPlace是传入的0 然后4块显卡 其他机器运行的tensorflow代码是用的显卡编号为2
其他:测试多个tensorflow模型用不同显卡可以同时运行的
如果CUDAPlace是传入的1是调用 显卡编号为1的卡
0
收藏
请登录后评论
我知道原因了 ,可是还是没有解决,CUDA_VISIBLE_DEVICES设置了还是无效,我也尝试了在代码中import os 然后设置os.environ["CUDA_VISIBLE_DEVICES"] = "0",想不懂的是为什么paddle单卡运行 居然要把所有显卡的显存都占一点,代码和显卡显存占用如下:
学习了,楼主好分享
楼主方便分享下unet的paddle实现代码段嘛,就是主干网络那份部分代码
嗯嗯 好的 我等会上传一份
已上传
感觉也没问题啊
代码没问题的 是paddle的问题 在启动的时候 有几个gpu就要耗几个gpu的200mb显存 如果其他gpu在运行代码 paddle就启动失败
感觉也没问题啊,不过http://www.paddlepaddle.org/documentation/docs/zh/1.2/user_guides/howto/training/single_node.html
在这里提到执行多卡训练可以使用 fluid.ParallelExecutor 运行训练 fluid.Program,搂着可以看下是否开启`ParallelExecutor `,
最后,提醒下楼主可以把代码段删了
我百度加你好友,贴吧客户端聊下