openpai - 只有CUDA库(没有OpenMPI)的多GPU并行处理代码是否有自动多节点分布式处理功能?
问题描述
我正在构建和测试 OpenPAI v0.14.0。以前,我在 1 节点 4-gpu 机器上构建了 OpenPAI,并将其用于 4-gpu 分布式并行处理。
这一次,一台新的 1-node 2-gpu 机器进来并连接了两个节点。OpenPAI 仪表板显示有 6 个 gpu 可用。但是,当我尝试将一项作业分配给 6-gpu 时,我得到退出代码:-7200,退出原因:maxGPUs = 4。
我认为maxGPU = 4,一个节点上最大的GPU数量。OpenPAI 支持的 GPU 分发是否只能在一个节点上进行?
我在 openpai.readthedocs.io 网站上找到了分布式作业示例。 https://openpai.readthedocs.io/en/latest/manual/cluster-user/advanced-jobs.html#distributed-job-examples
这里的两个示例之一,TensorFlow CIFAR10,似乎正在将不同的作业分配到不同的节点,即参数服务器和工作者。对于另一个例子,Horovod PyTorch,似乎不仅编写了 GPU 分布式代码,而且已经使用 OpenMPI 来分布代码内部的节点。
仅当分布式编程使用 OpenMPI 在代码级别直接使用多节点时,我是否可以在 OpenPAI 中使用多节点分布式 GPU 并行化?
OpenPAI 不会自动处理仅使用 CUDA 库的多节点分布式多 GPU 并行编程吗?
谢谢你。
解决方案
推荐阅读
- python - 点之间的矢量化/线性代数距离?
- php - 使用 PHP 中的 API 通过网站获取 Twitter 个人资料
- java - 通过转换为具体(无界通配符)类型产生的意外未经检查的转换警告
- android - RecyclerView 不读取属性来分配值
- javascript - React Native TextInput onSubmitEditing 在每次按键时触发
- loops - ansible 2.4 如果已经安装了“with_item”循环和“when”条件,如何跳过安装 apt 包
- python - 如何让 Jedi-vim 导航到 Ctrl+click 上的声明?
- macos - 向 Tcl/Tk macOS 框架添加扩展
- java - ScrollView 在调整大小
- gtmetrix - 禁用的媒体标签对网站有什么危害?