使用 ubuntu + p100 在 power8 sxm2 nvlink 上进行深度学习
deep learning on power8 sxm2 nvlink with ubuntu + p100
我和我的同事考虑购买一台新服务器,用于使用 SXM2 NVlink 等进行深度学习。
因为它的 power8 架构,我预计在其上构建通常的堆栈会遇到一些困难,例如。 docker + 用于深度学习框架的 tensorflow。
有没有人体验过以下设置是否可行,或者我是否必须预料到困难/不可能?
- SXM2 Power8 - 4 x P100 GPU 用于 NVLINK
- Os: Ubuntu 14.04 / 16.04 裸
金属装置
- 通过 SLURM 调度程序进行管理。
- 深度学习框架:caffee 和 torch、tensorflow(用户自定义构建)
遗憾的是,我们对 TensorFlow 的 Power 架构没有太多经验,而且我还没有看到社区中有人成功使用它的任何报告,因此可能需要进行一些故障排除才能使其正常工作。
对于上述设置,我们发现它在很大程度上取决于用例。所以这是调查结果。也许它可以帮助其他想要深入这个高性能领域但不确定要购买哪种架构的人。
用例:
我们的用例是集成到现有架构 (SLURM) 和云服务(主要是 x86,例如 aws)。因此我与 nvidia 交谈,他们建议在 x86 上使用 nvlink (sxm2)。 PCIe 将覆盖标准套接字到 gpu 通信。 SXM2 将透明地接管 GPU 网格通信。这样做的好处是 GPU 上的训练非常快,而 x86 的部署保持不变(GPU 也通过 PCIe 连接)
Power8
如果想要完整的 Power8 功能,这里的用例将是从插槽到 GPU 的真正 HPC 级别。这将需要更多的部署复杂性。
如果需要 power8 提升,则需要决定用例级别(例如高端研究)。
Nvidia 有一篇很好的技术 overview paper 论文,更详细地解释了这些内容。
我和我的同事考虑购买一台新服务器,用于使用 SXM2 NVlink 等进行深度学习。 因为它的 power8 架构,我预计在其上构建通常的堆栈会遇到一些困难,例如。 docker + 用于深度学习框架的 tensorflow。 有没有人体验过以下设置是否可行,或者我是否必须预料到困难/不可能?
- SXM2 Power8 - 4 x P100 GPU 用于 NVLINK
- Os: Ubuntu 14.04 / 16.04 裸 金属装置
- 通过 SLURM 调度程序进行管理。
- 深度学习框架:caffee 和 torch、tensorflow(用户自定义构建)
遗憾的是,我们对 TensorFlow 的 Power 架构没有太多经验,而且我还没有看到社区中有人成功使用它的任何报告,因此可能需要进行一些故障排除才能使其正常工作。
对于上述设置,我们发现它在很大程度上取决于用例。所以这是调查结果。也许它可以帮助其他想要深入这个高性能领域但不确定要购买哪种架构的人。
用例: 我们的用例是集成到现有架构 (SLURM) 和云服务(主要是 x86,例如 aws)。因此我与 nvidia 交谈,他们建议在 x86 上使用 nvlink (sxm2)。 PCIe 将覆盖标准套接字到 gpu 通信。 SXM2 将透明地接管 GPU 网格通信。这样做的好处是 GPU 上的训练非常快,而 x86 的部署保持不变(GPU 也通过 PCIe 连接)
Power8 如果想要完整的 Power8 功能,这里的用例将是从插槽到 GPU 的真正 HPC 级别。这将需要更多的部署复杂性。 如果需要 power8 提升,则需要决定用例级别(例如高端研究)。
Nvidia 有一篇很好的技术 overview paper 论文,更详细地解释了这些内容。