machine-learning - GPU 在参数服务器上进行数据并行训练是否高效?

标签 machine-learning tensorflow google-cloud-ml google-cloud-ml-engine

关于data parallel training ,我猜 GPU 实例对于参数服务器来说不一定高效,因为参数服务器只保留值,不运行任何计算,例如矩阵乘法。

因此,我认为 Cloud ML Engine 的示例配置(参数服务器使用CPU,其他服务器使用GPU)以下具有良好的性价比:

trainingInput:
  scaleTier: CUSTOM
  masterType: standard_gpu
  workerType: standard_gpu
  parameterServerType: standard_cpu
  workerCount: 3
  parameterServerCount: 4

是吗?

最佳答案

您的假设是一个合理的经验法则。也就是说,Parag 引用了一篇论文,该论文描述了一种可以在参数服务器中利用 GPU 的模型,因此参数服务器并不总是无法利用 GPU。

一般来说,您可能想在短时间内尝试这两种方法,看看吞吐量是否有所提高。

如果您对实际分配给参数服务器的操作有任何疑问,您可以 log the device placement 。如果参数服务器上的操作看起来可以从 GPU 中受益(假设它们确实应该在那里),那么您可以继续尝试参数服务器中的 GPU。

关于machine-learning - GPU 在参数服务器上进行数据并行训练是否高效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43406111/

相关文章:

tensorflow - 我如何操作 <class 'google.protobuf.internal.containers.RepeatedScalarFieldContainer' >?

python - 如何在不使用估计器的情况下为训练的 Tensorflow 模型编写服务输入函数?

google-cloud-platform - 在 Google Cloud Platform ML Engine 中创建新版本时出现 403 Forbidden

r - 没有默认值的错误 : argument "x" is missing,?

validation - 验证集是训练集的一部分吗?

machine-learning - 地理数据的曲线拟合

tensorflow - CPU 上的变量,GPU 上的训练/梯度

python - 如何使用 flow_from_directory 仅选择特定文件格式?

python - 如何理解tensorflow错误消息?

google-cloud-ml - 谷歌机器学习引擎 Python 3