InternalError: Blas GEMM launch failed 原因

ubuntu 16.04 + cuda 9.0 + cudnn 7.05 +tensorflow-gpu==1.5

发生原因:
(1)、由于其他pythonx程序占用了GPU资源,导致现有程序没法分配足够的资源去执行当前程序。
(2)、tensorflow-gpu默认占用所有显存,注意在初始化 Session 的时候为其分配固定数量的显存,否则可能会在开始训练的时候直接报错退出。

解决办法:
(1)if 'session' in locals() and session is not None: print('Close interactive session') session.close()
(2)gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.5) sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
per_process_gpu_memory_fraction=0.5设置占用GPU比例。

如果还未能解决:

下载cuda9.0补丁
下载地址:https://developer.nvidia.com/cuda-90-download-archive
根据自己的系统选择,我这里选择linux - x86_64 - ubuntu -16.04 - runfile(local)
需下载的四个补丁:
cuda_9.0.176.1_linux.run,cuda_9.0.176.2_linux.run,
cuda_9.0.176.3_linux.run,cuda_9.0.176.4_linux.run

sudo chmod a+x cuda_9.0.176.1_linux.run cuda_9.0.176.2_linux.run cuda_9.0.176.3_linux.run cuda_9.0.176.4_linux.run
sudo ./cuda_9.0.176.1_linux.run
sudo ./cuda_9.0.176.2_linux.run
sudo ./cuda_9.0.176.3_linux.run
sudo ./cuda_9.0.176.4_linux.run

你可能感兴趣的:(InternalError: Blas GEMM launch failed 原因)