cuda,cudnn,tensorflow安装之后调用tf.test.is_gpu_available()之后出现false的解决方案
这里一定要安装对应的cuda,cudnn,tensorflow版本,如果版本不匹配就极有可能报错。
cuda 10.0 cudnn7.4.2 tensorflow-gpu-2.0.0我这里用的是这一套版本安装之后是没有问题的。具体的安装cuda,cudnn操作如下网址
所有的安装完成之后,操作如下
- 打开cmd
- 输入ipython
- 进入ipython环境
- 输入“import tensorflow as tf”
- 输入“tf.test.is_gpu_available()”
- 输出"True"表示成功
下面用代码来测试cpu和gpu的使用效果:测试代码如下
import tensorflow as tf
import timeit
with tf.device('/cpu:0'):
cpu_a = tf.random.normal([10000, 1000])
cpu_b = tf.random.normal([1000, 2000])
print(cpu_a.device, cpu_b.device)
with tf.device('/gpu:0'):
gpu_a = tf.random.normal([10000, 1000])
gpu_b = tf.random.normal([1000, 2000])
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=10)
gpu_time = timeit.timeit(gpu_run, number=10)
print('run time:', cpu_time, gpu_time)
运行结果如下:
可以看出gpu的速度非常之快。
更多推荐
tf.test.is_gpu_available()报错false的解决方案
发布评论