📅  最后修改于: 2023-12-03 15:14:12.341000             🧑  作者: Mango
Colab是Google提供的一个免费的云端Jupyter Notebook开发环境,支持Python和多种机器学习库及GPU加速。Colab中的环境包含了多个版本的CUDA及cuDNN,开发者可以据此自由选择GPU加速的方式。本文将介绍在Colab中如何查看CUDA版本及使用CUDA进行深度学习加速。
在Colab中,我们可以使用以下代码查看当前环境中CUDA和cuDNN的版本:
!/usr/local/cuda/bin/nvcc --version
!cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
输出示例:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 6
#define CUDNN_PATCHLEVEL 5
可以看到当前环境的CUDA版本为10.1,cuDNN版本为7.6.5。
在Colab中,我们可以通过以下步骤启用GPU加速:
下面是一段使用Tensorflow库进行深度学习加速的示例代码:
# 导入Tensorflow库
import tensorflow as tf
# 检查GPU是否可用
print(tf.test.is_gpu_available())
# 定义网络结构
model = tf.keras.Sequential([
tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
tf.keras.layers.MaxPooling2D(pool_size=(2, 2)),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(10, activation='softmax')
])
# 编译模型
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
# 训练模型
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
x_train = x_train.reshape(x_train.shape[0], 28, 28, 1)
x_test = x_test.reshape(x_test.shape[0], 28, 28, 1)
model.fit(x_train, y_train, epochs=5)
# 评估模型
model.evaluate(x_test, y_test, verbose=2)
当代码运行时,我们可以使用以下代码查看GPU使用情况:
!nvidia-smi
输出示例:
Sun Jul 04 10:13:19 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |
| N/A 67C P0 30W / 70W | 4685MiB / 15109MiB | 27% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 1 Tesla T4 Off | 00000000:00:05.0 Off | 0 |
| N/A 63C P0 27W / 70W | 3217MiB / 15109MiB | 32% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 2 Tesla T4 Off | 00000000:00:06.0 Off | 0 |
| N/A 67C P0 31W / 70W | 3216MiB / 15109MiB | 26% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
| 3 Tesla T4 Off | 00000000:00:07.0 Off | 0 |
| N/A 61C P0 26W / 70W | 3216MiB / 15109MiB | 32% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
可以看到当前环境中4块Tesla T4显卡被成功地使用。
本文介绍了如何查看Colab中的CUDA版本及使用CUDA进行深度学习加速。开发人员可以根据需要配置Colab环境,以达到最大的加速效果。