win10+python3.6,因为之前就有装tensorflow GPU的版本,所以cuda之前就已经装好了,这次主要是对tensorflow进行更新,一开始直接是在pycharm的setting上进行更新,但是出现了下图的错误,以为是我的cuda版本啥的不对,走了很多弯路。
https://blog.csdn.net/CxsGhost/article/details/104717810
最后解决:在cmd上直接输入以下两行命令就可以了
删除旧版本
pip uninstall tensorflow
安装新版本
pip install tensorflow-cpu==2.1.0
安装好后可以通过anaconda list 或者在pycharm上查看到tensorflow已经是新版了,但是导包的时候会发现报错
最后解决:https://support.microsoft.com/zh-cn/help/2977003/the-latest-supported-visual-c-downloads
去该网站下一个文件,因为我电脑是64位的,所以选择 x64 版本下载安装即可。安装后重新打开python环境,即可成功导入tensorflow。
测试:
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
# warm up
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)
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
a = tf.constant(1.)
b = tf.constant(2.)
print(a+b)
print('GPU:', tf.test.is_gpu_available())