我的机器上没有 GPU,因为 tensorflow 上的大多数性能建议只提到 GPU,有人可以确认一下,例如
tf.data.prefetch
tf.distribute.mirroredstrategy
tf.distribute.multiworkerstrategy
仅适用于多 GPU 吗?我在我的电脑上尝试过,大多数功能确实减慢了进程而不是增加了进程。因此多CPU在这里没有好处吗?
我的机器上没有 GPU,因为 tensorflow 上的大多数性能建议只提到 GPU,有人可以确认一下,例如
tf.data.prefetch
tf.distribute.mirroredstrategy
tf.distribute.multiworkerstrategy
仅适用于多 GPU 吗?我在我的电脑上尝试过,大多数功能确实减慢了进程而不是增加了进程。因此多CPU在这里没有好处吗?
如果您还没有解决您的问题,您可以使用 Google Colab ( https://colab.research.google.com ) 获取 GPU - 您可以将运行时更改为 GPU 或 TPU。
我不明白你在问什么,但让我给你一个 10,000 英尺的解释。它可能会帮助您了解应该使用什么/何时使用它。
tf.data.prefetch
:假设您在训练模型时有两个步骤。a) 读取数据,b) 处理数据。在处理数据时,您可能会读取更多数据以确保在当前批次数据完成“训练”后这些数据可用。想想生产者/消费者模型。当您产生更多数据时,您不希望您的消费者闲置。
tf.distribute.mirroredstrategy
:如果您有一台具有多个 GPU 的机器,这会有所帮助。它允许在同一台机器上“并行”训练模型。
tf.distribute.multiworkerstrategy
: 现在假设您有一个包含 5 台机器的集群。您可以使用所有这些以分布式方式训练您的模型。
这只是对您在此处提到的那 3 个项目的简单解释。