文章目录
- 官方步骤
- 我笔记本GPU是1050,以下配置都是按我自己的情况来配置的,如与我的GPU不一样,请搜索相关的资料来辅助更好一些; 可尝试使用1050(显卡型号)+specification去google一下 查看地址 官网没有我这个版本,但我搜索资料发现我这个版本是支持CUDA的。 目前发现好像GPU只能是NVIDIA的,其它品牌不详;
- 必须要64位的,32位版本的无法安装任何tensorflow 安装包下载网址我下载的python3 注意下载位64位的,不要搞错了
- 我安装的是10.0版本,注意找到安装地址 下载地址
- 我下载的是7.6.3.30 我刚开始按网上的教程,总是出错,后来发现直接把下载的文件解压后,直接把CUDD对应文件夹里面的文件放到CUDA里面对应的文件夹(上面CUDA安装后的配置文件夹,一般情况如下地址)里面即可; C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0
- 尝试在命令行里面进行(我不清楚这种方法是否成功,但我在成功前尝试过) SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0bin;%PATH% SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0extrasCUPTIlibx64;%PATH% SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0include;%PATH% 在系统环境变量里面手动配置 这个在电脑里面搜索环境变量,然后就直接系统变量里面新建就行了,变量名随便取,但我希望自己能取一个能见名知意的(比如CUDA0,CUDA1等等);
- 看看自己python运行环境是什么,我有两个,一个是jupyter lab,另一个是Visual Studio Code,都能玩; 先建一个测试文件(文件名如:test.py),内容如下: import sys import tensorflow as tf from datetime import datetime device_name = sys.argv[1] # Choose device from cmd line. Options: gpu or cpu shape = (int(sys.argv[2]), int(sys.argv[2])) if device_name == "gpu": device_name = "/gpu:0" else: device_name = "/cpu:0" with tf.device(device_name): random_matrix = tf.random_uniform(shape=shape, minval=0, maxval=1) dot_operation = tf.matmul(random_matrix, tf.transpose(random_matrix)) sum_operation = tf.reduce_sum(dot_operation) startTime = datetime.now() with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as session: result = session.run(sum_operation) print(result) print("n" * 5) print("Shape:", shape, "Device:", device_name) print("Time taken:", datetime.now() - startTime) print("n" * 5) ``` - 测试CPU的处理时间 ```shell python test.py cpu 10000 测试GPU的处理时间 python test.py gpu 10000 多重复几次上述就可以发现GPU处理还是很强的,可以提高后面的数字来提高测试压力
- 这个测试程序目前感觉有问题,当数字大于10000后,CPU和GPU的测试都有问题,我的机器CPU 15000可以运行,但GPU不可以,后来尝试测试训练一个初级入门程序,发现还是不错的,CPU占用率40%左右,GPU20%左右,后续我会把这个测试集放出来的。 tensorflow-gpu版测试代码(minist手写识别)
- 有好几次无法调用GPU而导致程序退出; tensorflow里面有一个什么包一直提示不够最新,但不知道如何解决;

我笔记本GPU是1050,以下配置都是按我自己的情况来配置的,如与我的GPU不一样,请搜索相关的资料来辅助更好一些;
我笔记本GPU是1050,以下配置都是按我自己的情况来配置的,如与我的GPU不一样,请搜索相关的资料来辅助更好一些;
可尝试使用1050(显卡型号)+specification去google一下
官网没有我这个版本,但我搜索资料发现我这个版本是支持CUDA的。
- 目前发现好像GPU只能是NVIDIA的,其它品牌不详;
必须要64位的,32位版本的无法安装任何tensorflow
必须要64位的,32位版本的无法安装任何tensorflow
注意下载位64位的,不要搞错了
我安装的是10.0版本,注意找到安装地址 下载地址
我安装的是10.0版本,注意找到安装地址 下载地址
我下载的是7.6.3.30
我下载的是7.6.3.30
我刚开始按网上的教程,总是出错,后来发现直接把下载的文件解压后,直接把CUDD对应文件夹里面的文件放到CUDA里面对应的文件夹(上面CUDA安装后的配置文件夹,一般情况如下地址)里面即可;
C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0
- 尝试在命令行里面进行(我不清楚这种方法是否成功,但我在成功前尝试过)
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0bin;%PATH%
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0extrasCUPTIlibx64;%PATH%
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0include;%PATH%
- 在系统环境变量里面手动配置 这个在电脑里面搜索环境变量,然后就直接系统变量里面新建就行了,变量名随便取,但我希望自己能取一个能见名知意的(比如CUDA0,CUDA1等等);
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0bin;%PATH%
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0extrasCUPTIlibx64;%PATH%
SET PATH=C:Program FilesNVIDIA GPU Computing ToolkitCUDAv10.0include;%PATH%
- 看看自己python运行环境是什么,我有两个,一个是jupyter lab,另一个是Visual Studio Code,都能玩;
- 先建一个测试文件(文件名如:test.py),内容如下:
import sys
import tensorflow as tf
from datetime import datetime
device_name = sys.argv[1] # Choose device from cmd line. Options: gpu or cpu
shape = (int(sys.argv[2]), int(sys.argv[2]))
if device_name == "gpu":
device_name = "/gpu:0"
else:
device_name = "/cpu:0"
with tf.device(device_name):
random_matrix = tf.random_uniform(shape=shape, minval=0, maxval=1)
dot_operation = tf.matmul(random_matrix, tf.transpose(random_matrix))
sum_operation = tf.reduce_sum(dot_operation)
startTime = datetime.now()
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as session:
result = session.run(sum_operation)
print(result)
print("n" * 5)
print("Shape:", shape, "Device:", device_name)
print("Time taken:", datetime.now() - startTime)
print("n" * 5)
```
- 测试CPU的处理时间
```shell
python test.py cpu 10000
-
测试GPU的处理时间
python test.py gpu 10000
-
多重复几次上述就可以发现GPU处理还是很强的,可以提高后面的数字来提高测试压力
import sys
import tensorflow as tf
from datetime import datetime
device_name = sys.argv[1] # Choose device from cmd line. Options: gpu or cpu
shape = (int(sys.argv[2]), int(sys.argv[2]))
if device_name == "gpu":
device_name = "/gpu:0"
else:
device_name = "/cpu:0"
with tf.device(device_name):
random_matrix = tf.random_uniform(shape=shape, minval=0, maxval=1)
dot_operation = tf.matmul(random_matrix, tf.transpose(random_matrix))
sum_operation = tf.reduce_sum(dot_operation)
startTime = datetime.now()
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as session:
result = session.run(sum_operation)
print(result)
print("n" * 5)
print("Shape:", shape, "Device:", device_name)
print("Time taken:", datetime.now() - startTime)
print("n" * 5)
```
- 测试CPU的处理时间
```shell
python test.py cpu 10000测试GPU的处理时间
python test.py gpu 10000
多重复几次上述就可以发现GPU处理还是很强的,可以提高后面的数字来提高测试压力
这个测试程序目前感觉有问题,当数字大于10000后,CPU和GPU的测试都有问题,我的机器CPU 15000可以运行,但GPU不可以,后来尝试测试训练一个初级入门程序,发现还是不错的,CPU占用率40%左右,GPU20%左右,后续我会把这个测试集放出来的。
这个测试程序目前感觉有问题,当数字大于10000后,CPU和GPU的测试都有问题,我的机器CPU 15000可以运行,但GPU不可以,后来尝试测试训练一个初级入门程序,发现还是不错的,CPU占用率40%左右,GPU20%左右,后续我会把这个测试集放出来的。
