【发布时间】:2018-02-27 04:33:50
【问题描述】:
我来自某种 HPC 背景,我刚刚开始学习一般的机器学习,特别是 TensorFlow。我最初惊讶地发现,分布式 TensorFlow 默认设计为与 TCP/IP 通信,尽管事后看来,考虑到 Google 是什么以及它最常使用的硬件类型,它是有道理的。
我有兴趣在集群上以并行方式与 MPI 一起试验 TensorFlow。从我的角度来看,这应该是有利的,因为由于 MPI 在没有共享内存的机器上使用远程直接内存访问 (RDMA),延迟应该会低得多。
所以我的问题是,鉴于 TensorFlow 和机器学习的日益普及,为什么这种方法似乎没有更普遍?延迟不是瓶颈吗?是否有一些典型的问题得到解决,使这种解决方案不切实际?以并行方式调用 TensorFlow 函数与在 TensorFlow 库中实现 MPI 调用之间是否可能存在任何有意义的差异?
谢谢
【问题讨论】:
-
CNTK 基于 MPI,可能值得研究。
-
Uber 的 Horovod 也使用 MPI。
标签: python tensorflow mpi mpi4py