踩过了好多坑之后我只能说网上的大部分教程都太老了,不适合RTX30系显卡,其实正确的方法比那些老方法简单的多,重要的是你显卡是新的,软件版本也一定要新
一、安装CUDA与cuDNN
- 首先确保你已经安装了新版的nvidia图形驱动程序。其次你得有C/C++编译环境,没有的话装一个Visual Studio或MinGW。
- 安装CUDA Toolkit 11.3
- 下载CUDNN 11.3,将解压后的全部文件复制到CUDA的安装目录中(默认:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\)。
- 进入C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.3\extras\demo_suite中,在命令行运行deviceQuery.exe和bandwidthTest.exe,如果运行后显示pass则表示CUDA及CUDNN成功安装。
二、安装python3.8
直接在官网下载安装,或用conda安装。
三、安装Tensorflow
3.1 安装
一定要用 pip 安装,别用conda
pip install tensorflow
因为新版tensorflow同时包含cpu和gpu支持,所以是tensorflow而不是tensorflow-gpu。别指定2.0或2.3版本,就默认新版的,老版本有bug。
3.2 测试
进入python命令行,执行以下代码,最后显示 “True”即说明已支持gpu。
import tensorflow as tf print(tf.test.is_gpu_available()) |
以下是一段来自tensorflow官网的示例代码,看看能否执行成功
import tensorflow as tf mnist = tf.keras.datasets.mnist (x_train, y_train),(x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0, x_test / 255.0 model = tf.keras.models.Sequential([ tf.keras.layers.Flatten(input_shape=(28, 28)), tf.keras.layers.Dense(128, activation=‘relu‘), tf.keras.layers.Dropout(0.2), tf.keras.layers.Dense(10, activation=‘softmax‘) ]) model.compile(optimizer=‘adam‘, loss=‘sparse_categorical_crossentropy‘, metrics=[‘accuracy‘]) model.fit(x_train, y_train, epochs=5) model.evaluate(x_test, y_test) |