TensorFlow不支持GPU问题解决-The minimum required Cuda capability is 3.5

时间:2024-03-25 22:46:35

2019-04-10 11:45:33.147110: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1455] Ignoring visible gpu device (device: 0, name: GeForce GTX 870M, pci bus id: 0000:01:00.0, compute capability: 3.0) with Cuda compute capability 3.0. .

问题描述

TensorFlow不支持GPU问题解决-The minimum required Cuda capability is 3.5如图 要求至少3.0算力。我的870m不幸是开普勒架构,毕竟5年的老战友了,tf1.10.0版至少要求3.5的算力。但是我机子的显卡不算太弱的,还是很有运用价值(在没有占用工作室大台式1080ti的前提下,毕竟学习阶段没有必要和别人抢资源)。

解决办法

在TF官网手册发现了这么一条:

TensorFlow不支持GPU问题解决-The minimum required Cuda capability is 3.5对于3.0的GPU需要从源码编译,官网编译指导在这里,而且仅支持Linux。所以,放弃win吧,是时候投入Linux的怀抱了,真的terminal一行搞定真的是舒服,而且自带装逼特效。所以如果你现在没有linux基础,现在就开始,其实没多难,命令行习惯就好。

注意事项

关于编译安装需要注意,我用的bazel版本要和TF版本对应,因为版本不对应会导致一堆乱七八糟的问题,所以不是越新越好,道理大家都懂。我用的0.15
TensorFlow不支持GPU问题解决-The minimum required Cuda capability is 3.5同时,在安装bazel时候用图上的方法可用,官网给的第二种方法出问题了,应该是源的问题。就没管,除非都行不同我才会查问题(人类的本质是懒猪)
装完bazel还要装nccl,核弹厂的一个包,去官网下了装上对应版本即可,我选2.2.13,cuda9的
万事俱备就继续跟着官网教程编译。需要说明的是:编译过程比较漫长,我i7 4710mq开暴力风扇不降频用了1个多小时,内存占用比较大,如果机器内存不足可能需要制定内存占用最大值:

bazel build -c opt --jobs 1 --local_resources 2048,0.5,1.0 --verbose_failures //tensorflow/tools/pip_package:build_pip_package

我16G内存最高占用大约到了70%

结果:

重新编译解决问题:
TensorFlow不支持GPU问题解决-The minimum required Cuda capability is 3.5问题解决。
PS:有钱还是直接买新机,显卡一定要好。不过在编译过程中也发现很多可选项,如果把那些定制项都用好,肯定可以上天。