众所周知,tensorflow用gpu的时候,环境一直是个很恶心的东西。这几天遇到了个问题:训练的时候报错:
Attempting to perform BLAS operation using StreamExecutor without BLAS support
一直以为核心问题是这个报错。
百度和谷歌得到的帖子,都是说gpu显存不够,要动态分配显存bla bla的。用尽了所有的代码,都无功而返。观察gpu的使用,并不见得显存有上涨,而且还是基本没用gpu的状态。
显然不是显存不够,还是环境的问题?
也有说BLAS库没装好的,需要装OpenBLAS,又是一通装,结果还是无济于事。
后面又看了下,发现前面还有错误:failed to create cublasLt handle: CUBLAS_STATUS_INTERNAL_ERROR
难道这个才是关键错误?一查,果然也有朋友遇到此问题:
https://blog.csdn.net/Camileyml/article/details/127368123
按照这个帖子,在代码最上方加入
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "1"
瞬间就好了。困恼了几天的问题迎刃而解。