1. 程式人生 > 實用技巧 >tensorflow出現Failed to get convolution algorithm, cuDNN failed to initialize

tensorflow出現Failed to get convolution algorithm, cuDNN failed to initialize

網上大多的教程是說tensorflow的版本過高,或者說cuda和cudnn的版本不對,需要降級,但這樣會很麻煩!!!

以下值得推薦!!!

解決方法一:在程式碼前加上下面的程式碼

from tensorflow.compat.v1 import ConfigProto

from tensorflow.compat.v1 import InteractiveSession

config = ConfigProto()
config.gpu_options.allow_growth = True
session = InteractiveSession(config=config)




或者

新增下面兩行

import os

os.environ['CUDA_VISIBLE_DEVICES'] = '/gpu:0'

或者

新增

import os

os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"

os.environ['CUDA_VISIBLE_DEVICES'] = "0,1"//選擇哪一塊gpu,如果是-1,就是呼叫cpu

config = tf.ConfigProto()//對session進行引數配置

config.allow_soft_placement=True : 如果你指定的裝置不存在,允許TF自動分配裝置

config.gpu_options.per_process_gpu_memory_fraction=0.7//分配百分之七十的視訊記憶體給程式使用,避免記憶體溢位,可以自己調整

config.gpu_options.allow_growth = True//按需分配視訊記憶體,這個比較重要

session = tf.Session(config=config)