理解分布式张量的概念基础

2024-05-23 15:58:50 发布

您现在位置:Python中文网/ 问答频道 /正文

让我先介绍一下群集设置:

  • 我有两个节点(每个节点有2个gpu)。我把它们称为节点A和节点B
  • 每个节点都有自己的SSD存储。在
  • OAR是使用的群集管理器。在

我已经看过了分布式TensorFlow文档,但是有一些功能基础我不能正确理解,因此这个问题。在

考虑以下情况:

  • 我在节点A上复制了大约600GB的数据
  • 我可以使用OAR专门请求在两个节点上分配4个gpu。在

如果要使用分布式TensorFlow训练模型:

  1. 如何为指定网络地址列车集群规范? 这些网络地址是什么?在文档中有这样的名称本地主机:2222使用群集管理器为特定节点保留的名称是否相同?在
  2. 我的数据被复制到节点A。在培训期间,TensorFlow自己是否会负责将这些数据作为输入发送到节点B上的GPU?在
  3. 我需要为每个节点上的每个GPU手动创建TensorFlow图吗tf.装置() ? 在
  4. 如果我还想使用一些额外的CPU节点,我是否必须事先知道它们的名称并将它们放入代码中?在

Tags: 数据文档功能名称管理器节点gputensorflow
1条回答
网友
1楼 · 发布于 2024-05-23 15:58:50
  1. 是的
  2. 客户机创建图形并在worker上执行该图形。如果使用带参数服务器的howto中的图间复制,则客户端和工作进程是相同的。此过程只需使用with tf.device为当前节点创建部分图形。如果在单个客户机上使用图内复制,则客户机需要使用多个with tf.graph部分为所有节点创建图。在

使用单独的客户机/工作进程进行图内复制的最简单示例是here

  1. 您通常需要通过cluster spec提前配置所有节点,并且它们的名称按顺序分配为/job:worker/task:0/job:worker/task:1

相关问题 更多 >