TensorFlow 单个和多个 GPU17 Mar 2025 | 4 分钟阅读 我们常用的系统可以包含多个用于计算的设备,并且我们已经知道 TensorFlow 支持 CPU 和 GPU,我们用字符串表示它们。 例如
![]() 设备放置日志记录我们可以通过创建一个会话来找出哪些设备处理特定的操作,其中预设了 log_device_placementconfiguration 选项。 TensorFlow GPU 设备放置日志记录的输出如下所示 手动设备放置有时我们可能想决定我们的操作应该在哪个设备上运行,我们可以通过使用 tf.device 创建一个上下文来实现,我们在其中分配特定的设备,例如。 应该执行计算的 CPU 或 GPU,如下所示 上面的 TensorFlow GPU 代码将常量 a 和 b 分配给 cpu:o。 在代码的第二部分中,由于没有明确声明哪个设备要执行任务,因此默认选择 GPU(如果可用),并且它在设备之间复制多维数组。 优化 TensorFlow GPU 内存进行内存碎片整理是为了通过映射处理器可见的几乎所有 TensorFlow GPU 内存来优化内存资源,从而节省大量潜在资源。 TensorFlow GPU 提供了两个配置选项来控制处理器在需要时分配的内存量,以节省内存,以下描述了这些 TensorFlow GPU 优化 ConfigProto 用于此目的 per_process_gpu_memory_fraction 是第二种选择,它决定了应为每个使用的 GPU 分配的总内存的片段。 下面给出的示例将用于 tensorflow 分配 40% 的内存 它仅在已经指定计算并且确定在处理期间不会更改的情况下使用。 多 GPU 系统中的单个 GPU在多 TensorFlow GPU 系统中,默认情况下选择具有最低标识的设备,用户不需要它。 当用户指定的 TensorFlow GPU 不存在时,会获得 InvalidArgumentError,如下所示 如果我们想指定默认值 在 TensorFlow 中使用多个 GPU我们已经了解 TensorFlow 中的塔,并且可以将每个塔分配给一个 GPU,从而创建一个用于使用 TensorFlow 多个 GPU 的多塔结构模型。 TensorFlow GPU 的输出如下 我们可以使用简单的数据集(例如 CIFAR10)来测试此多 GPU 模型,以进行实验并了解如何使用 GPU。 |
我们请求您订阅我们的新闻通讯以获取最新更新。