아래는 tensorflow-gpu 설치 중 발생한 에러들에 대해 정리한 문서입니다. 발생했던 에러들은 거의 cuDNN과 CUDA의 버전이 맞지 않아 발생한 것들이었습니다.
처음으로 해보는 설치였고, 여러 블로그를 참고하며 겨우겨우 진행하다 보니 난관이 많았습니다. 몇 번을 설치하고 지웠는지 참.... 이젠 정상적으로 설치가 됐겠지? 생각해도 gpu가 제대로 작동하는지를 테스트해보면
tf.test.is_gpu_avaliable() # gpu 작동 확인
>> False
tf.test.is_gpu_avaliable()
>> False
tf.test.is_gpu_avaliable()
>> False
그래도 터미널을 다시 한 번 천천히 확인해보니 문제가 조금씩 보이더군요.
1. cudart64_101.dll not found
CUDA의 버전이 맞지 않아 생기는 오류입니다. CUDA 10.2 버전을 설치했을 때 발생하였습니다. 설치한 CUDA를 삭제하고, CUDA 웹페이지에서 CUDA 10.1 Update 2 버전을 다시 다운로드하여 설치하여 해결되었습니다.
2. cudnn64_7.dll not found
cuDNN의 버전이 맞지 않아 생기는 오류입니다. cuDNN 8.0.3 버전을 설치하였을 때 발생하였습니다. cuDNN 파일을 모두 삭제한 후, cuDNN 7.6.5 버전을 다시 다운로드한 후 다시 설치한 CUDA 폴더에 덮어씌워 해결하였습니다.
3. 추가 comment
사실 이러한 에러들은 GPU에 맞는 CUDA 버전과 cuDNN 버전을 정확히 알고 있었다면 발생하지 않았을 것들입니다. cuDNN 버전의 경우 CUDA 버전에 따라 결정되므로 본인의 GPU를 지원하는 CUDA 버전을 알아두는 게 중요합니다.
위 페이지의 GPUs Supported 항목에서 GPU 별 Compute Capability와 그에 맞는 CUDA 버전을 확인할 수 있습니다.
예를 들어 제 노트북의 GPU는 GTX 1650입니다.
Compute Capability는 7.5입니다.
여기에 맞는 CUDA 버전을 찾아보고 설치하면 됩니다.
제게 맞는 버전은 CUDA 10.0~10.2 버전이군요. 하지만 신이 나서 다운로드하러 가보면
위에 맞는 버전만 5개가 있는 걸 알 수 있습니다. 저 중에서 아무거나 설치해도 되겠지! 하고 생각할 수도 있으나 저는 위에서도 썼듯이 10.2 버전을 설치했다가 안 맞아서 에러가 났습니다(.....). 이런 경우에는 일단 범위 내에서 가장 최신 버전을 깔아보고 시행착오를 거치는 수밖에는 없는 것 같습니다.
CUDA, cuDNN 설치에 대해서는 아래의 게시글도 참고해주세요.
http://mickael-k.tistory.com/18
문제 해결 후의 정상적인 설치 진행에 대해서는 이 문서에서 확인할 수 있습니다.
도움이 되었기를 바랍니다.
'Python > error' 카테고리의 다른 글
[error]수식 블록과 사라지는 $ (0) | 2021.01.31 |
---|---|
[error]웹 크롤링 시 Unicodeencodeerror: 'ascii' codec can't encode characters in position.. 해결법 (0) | 2020.08.23 |