如何知道 Keras 使用的是 GPU 还是 CPU

How to Know if Keras is using GPU or CPU

有什么方法可以检查 Keras 框架是否使用 GPU 或 CPU 来训练模型?

我正在使用 keras 在 GPU 上训练我的模型,但它太慢了,我不确定它是使用 CPU 还是 GPU 进行训练。

首先,您需要找到GPU设备:

physical_device = tf.config.experimental.list_physical_devices('GPU')
print(f'Device found : {physical_device}')

然后您可以使用以下代码检查您的 GPU 设备是否已用于训练:

tf.config.experimental.get_memory_growth(physical_device[0])

如果此代码 returns False 或什么都没有,那么您可以 运行 下面的代码来设置 GPU 进行训练

tf.config.experimental.set_memory_growth(physical_device[0],True)

首先让我们确保 tensorflow 正在检测您的 GPU。 运行 下面的代码。如果 GPU 数量=0,则表示未检测到您的 GPU。要让 tensorflow 使用 GPU,您需要安装 Cuda 工具包和 Cudnn。如果未检测到 GPU 并且您正在使用 Anaconda,请使用 Conda 重新安装 tensorflow。它会自动安装工具包和 Cudnn。当你用它来安装tensorflow时,pip不会安装这些。

import tensorflow as tf
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
print(tf.__version__)
print("Num GPUs Available: ", len(tf.config.experimental.list_physical_devices('GPU')))
tf.test.is_gpu_available()
!python --version

这是参考演示:

import tensorflow as tf
physical_device = tf.config.experimental.list_physical_devices('GPU')
print(f'Device found : {physical_device}')