Python, TensorFlow-GPU, cuDNN, CUDA 환경 설정 (Machine learning, Deep learning) for window
Python-TensorFlow-GPU, cuDNN, CUDA 환경 설정 관련으로 포스팅을 진행합니다.
이번 기회에 직접 AI를 학습하여 이미지를 만들거나 분류하는 시스템을 구현 해 보려고 합니다.
환경설정 하기 전에 먼저 확인 해야할 사항이 있습니다.
TensorFlow 라이브러리를 CPU를 이용한다면 보다 성능이 떨어질 수 있으니, 그래픽 카드를 이용하여 학습을 진행해보려합니다. 그래픽 카드별 환경 권장 버전은 아래 링크를 통해 확인 가능합니다.
필자의 경우 사용하는 그래픽 카드는 RTX 3060 TI로 해당 그래픽 카드를 기준으로 환경 설정을 진행하였습니다.
TensorFlow 버전별 호환되는 버전 확인 (Python, TensorFlow-gpu, cuDNN, CUDA의 권장 버전을 체크합니다.)
https://www.tensorflow.org/install/source_windows?hl=ko#tested_build_configurations
Windows의 소스에서 빌드,Windows의 소스에서 빌드 | TensorFlow
TensorFlow is back at Google I/O on May 14! Register now 이 페이지는 Cloud Translation API를 통해 번역되었습니다. Windows의 소스에서 빌드,Windows의 소스에서 빌드 컬렉션을 사용해 정리하기 내 환경설정을 기준으
www.tensorflow.org
CUDA 그래픽 카드별 권장 버전 설치 확인
https://en.wikipedia.org/wiki/CUDA
CUDA - Wikipedia
From Wikipedia, the free encyclopedia Parallel computing platform and programming model Compute Unified Device Architecture (CUDA) is a proprietary[1] parallel computing platform and application programming interface (API) that allows software to use certa
en.wikipedia.org
필자는 tensorflow_gpu-2.5.0, python 3.9, cuDNN 8.1, cuda 11.2 버전을 선택하여 설치하였습니다.
먼저 공식 링크를 통해 해당되는 python 버전을 다운로드 받습니다.
https://www.python.org/downloads/
Download Python
The official home of the Python Programming Language
www.python.org
그리고 python 설치를 진행합니다.

설치과 완료 되었다면 window-CMD 커맨드를 입력합니다.
python --version

정상적으로 설치가 완료 되었다면 설치된 버전을 확인 할 수 있습니다. 만약 버전 숫자가 나오지 않는다면, 환경변수를 확인 하시면 됩니다.
pip 커맨드를 이용하여, 해당 버전에 맞는 TensorFlow-gpu를 설치 합니다. (pip 커맨드가 입력되지 않으면 Script에 직접 추가 하거나 삭제 후 재 설치 해야 합니다.)
pip install tensorflow-gpu==2.5.0
설치가 완료 되었다면,
cmd 커맨드 pip list를 통해 설치를 확인 합니다. (여러 시스템이 설치되기 때문에 호환 여부 관련으로 에러가 발생 할 수 있습니다. 잘 확인하여 권장되는 사항으로 업그레이드 하거나, 다운그레이드 하면 됩니다.)
pip list

아래 링크를 통해, cuDNN 해당 버전을 잘 확인하여 다운로드 합니다.
https://developer.nvidia.com/rdp/cudnn-archive
cuDNN Archive
Download releases from the GPU-accelerated primitive library for deep neural networks.
developer.nvidia.com
아래 링크를 통해 cuda를 다운로드 합니다. (해당 버전)
https://developer.nvidia.com/accelerated-computing-toolkit
Accelerated Computing Tools
Develop and accelerate applications with breakthrough performances.
developer.nvidia.com
이미 이전에 그래픽카드 드라이버 SDK가 설치되어 있었다면, 설치 중 에러가 발생 할 수 있습니다.

당황하지 않고 취소 한 다음, 제어판 > 프로그램 제거에서 NVIDIA Frameview SDK 삭제 후, 재 설치 하면 됩니다. 그리고 아까 받은 cudnn 압축 파일을 풀면, cuda 폴더 안에 3개의 파일을 확인 할 수 있습니다.

설치한 CUDA 폴더 경로에 가서 붙여넣기(파일 덮어쓰기) 합니다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2
그래픽 카드 체크 (cmd 커맨드 입력)
nvidia-smi

위 작업 및 모두 설치가 완료 되었다면, cmd 커맨드를 이용하여 확인 합니다.
python
>>> import tensorflow as tf
>>> from tensorflow.python.client import device_lib
>>> device_lib.list_local_devices()
이상이 없다면 아래 사진과 같이 GPU 정보를 확인 할 수 있습니다.

인텔리제이(얼티메이트 버전) TensorFlow-gpu 연동하는 방법
인텔리제이 사용 시 다운받은 tensorflow-gpu를 인식하지 못해 수동으로 패키지를 잡아야 합니다.

file > project structure > SDKs > Python > Packages 탭 > 설치된 tensorflow-gpu 선택 경로 추가
(필자의 사용 경험으로 인텔리제이 보단.. VSCODE가 훨씬 편합니다..)
