遇坑太多了,方法反而最简单的最快
1.安装专有的460驱动,run文件安装坑太多了
2.在conda里面安装tensorlfow2.4
先用pip装tf,不要conda install tensorflow-gpu,是个坑
conda create -n tf24 python=3.8
conda activate tf24
pip install tensorflow
3.安装cuda和cudnn,版本一定要对应
去anaconda 搜索对应cuda cudnn版本
安装CUDA11
conda install -c anaconda cudatoolkit
安装cudnn8
conda install -c nvidia cudnn
4.测试
import tensorflow as tf
import timeit
n=100000000
with tf.device('/cpu:0'):
cpu_a = tf.random.normal([10,n])
cpu_b = tf.random.normal([n,10])
print(cpu_a.device,cpu_b.device)
with tf.device('/gpu:0'):
gpu_a = tf.random.normal([10,n])
gpu_b = tf.random.normal([n,10])
print(gpu_a.device,gpu_b.device)
def cpu_run():
with tf.device('/cpu:0'):
c = tf.matmul(cpu_a,cpu_b)
return c
def gpu_run():
with tf.device('/gpu:0'):
c = tf.matmul(gpu_a,gpu_b)
return c
##第一次计算需要热身,避免将初始化时间计算在内
cpu_time = timeit.timeit(cpu_run,number=10)
gpu_time = timeit.timeit(gpu_run,number=10)
print('warmup:',cpu_time,gpu_time)
cpu_time = timeit.timeit(cpu_run,number=100)
gpu_time = timeit.timeit(gpu_run,number=100)
print('compute:',cpu_time,gpu_time)
结果
cpu:i9 10900KF 显卡:rtx3090