Machine Learning

Tensorflow cuDNN failed to initialize error 해결

yssy431 2020. 7. 31. 00:27

Tensorflow CNN 모델을 생성하면서 아래의 에러메시지가 지속적을 발생 처음에는 같은 서버를 사용하는 사람이 몇명 있어서 메모리가 꽉차서 그러한가 했지만 확인결과 cuDNN 버전 에러를 확인

Failed to get convolution algorithm. This is probably because cuDNN failed to initialize, so try looking to see if a warning log message was printed above.

이 에러가 계속 뜨기에 현재 정부기관중 한 곳에서 지원받은 고성능 서버에서 작업을 진행 중인대, 초기 ubuntu 14.04설치 버젼에 여러 conda env list들이 있었다. 

 

기본 설치되어 있는 conda env들

 

저번에 실행을 했던 곳은 tensorflow 1.15 version에서 실행을 했었고 앞으로 추가적인 작업들은 2.2.0 버젼으로 해야 겠다고 생각을 하게 되었다. 따로 설치 한 jupyter server는 python 3.8.3과 tensorflow 2.2.0 version이 설치되어 있는데 conda 가상환경에서 구축해놓았는데 여기서 cuda가 여러 버젼들이 설치되어 있기에 cuDNN 에러를 발생할 때 대처를 하지 못하는 상황에서 여러가지 에러처리 진행 중 정말 간단한 방법으로 해결이 가능하였다.

conda install cuDNN

이거하나로 모든 것이 해결되며 tensorflow 2.2.0 버젼에서의 에러는 쿠다는 정상적으로 설치 하고 cuDNN 설치가 최신이 아니였기에 발생을 했었던 것이였다. 

 

conda는 정말 편리한 가상환경 인 걸 또 다시 느꼇다. virtualenv를 애용했지만 이제 conda로 넘어가야 할 것 같다.