Tensorflow-2.14.0 설치

안태현·2023년 10월 18일
0

Tensorflow-2.14.0 설치

위 글에서는 nvidia-driver 설치와 anaconda 설치과정은 작성하지 않았다.

환경
Ubuntu - 20.04
python - 3.9
nvidia driver - 535

1. Tensorflow 설치 전 필수 설치

https://www.tensorflow.org/install/source?hl=ko#gpu

우선 설치하기 전 cuda 와 cudnn 버전을 tensorflow 버전에 맞게 설치하여야 한다.
이 글에서는 2.14.0 버전의 tensorflow를 설치하기 때문에 다른 버전의 내용은 저 링크를 통해 확인 후 설치하면된다.

tensorflow-2.14.0 버전의 cuda 와 cudnn 버전은 다음과 같다
cuda - 11.8
cudnn - 8.7

1.1 CUDA 설치

https://developer.nvidia.com/cuda-toolkit-archive

다른 버전의 tensorflow 를 설치를 할 경우 위 페이지에서 자신의 tensorflow 버전에 맞게 cuda를 설치하면 된다.

다음은 cuda 11.8 버전의 설치 과정이다.

$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
$ sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
$ wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-ubuntu2004-11-8-local_11.8.0-520.61.05-1_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu2004-11-8-local_11.8.0-520.61.05-1_amd64.deb
$ sudo cp /var/cuda-repo-ubuntu2004-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
$ sudo apt-get update
$ sudo apt-get -y install cuda

이후

nvcc -V 

을 하였을 때 버전이 뜨지않고 sudo install 이 뜬다면

$ sudo nano ~/.bashrc

# 나노 편집기 맨 아래에 다음을 복사 붙여넣기 후

export PATH="/usr/local/cuda-11.8/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH"

# 저장은 ctrl + s , 나가기 ctrl + x

$ source ~/.bashrc

1.2 cuDNN 설치

https://developer.nvidia.com/rdp/cudnn-archive

필자는 Local Installer for Linux x86_64 (Tar) 을 다운로드 받아서 설치하였다.

다운로드한 cudnn 폴더로 이동하여서 다음을 진행하면된다.

만약 다른버전의 tensorflow 및 CUDA cuDNN 이라면 다음글에서 버전만 다르게 해서 입력하면 된다.

$ sudo cp include/cudnn* /usr/local/cuda-11.8/include
$ sudo cp lib/libcudnn* /usr/local/cuda-11.8/lib
$ sudo cp lib/libcudnn* /usr/local/cuda-11.8/lib64
$ sudo chmod a+r /usr/local/cuda-11.8/include/cudnn.h /usr/local/cuda-11.8/lib64/libcudnn*
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_adv_train.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8
$ sudo ln -sf /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn.so.8.7.0 /usr/local/cuda-11.8/targets/x86_64-linux/lib/libcudnn.so.8

$ ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn

다음과 같이 나온다면 잘 진행이 된 것이다.
재 부팅후 다음작업을 진행하자.

$ sudo reboot

2. Tensorflow-2.14.0

오늘 날짜 10월 18일 기준으로 pip, conda install 에서 tensorflow 설치는 2.12.0까지 지원한다. 그러므로 2.12.0 버전 이하는

---- cpu
$ pip install tensorflow=={version}
---- gpu
$ pip install tensorflow-gpu=={version}

or 

---- cpu
$ conda install tensorflow=={version}
---- gpu
$ conda install tensorflow-gpu=={version}

---- ex
 pip install tensorflow==2.12.0

를 진행하면 된다.

다시 2.14.0 버전으로 돌아와서

https://www.tensorflow.org/install/pip?hl=ko#package_location
위 링크에서 파이썬 버전에 맞는 .whl파일을 다운로드 받은 후

가상환경을 사용한다면 가상환경을 꼭 들어가서 다운로드 폴더로 이동한 후

$ pip install tensorflow-2.14.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

을 진행하면 설치 완료이다.

3. 테스트

# python
from tensorflow.python.client import device_lib
device_lib.list_local_devices()

다음과 같이 나온다면 설치 완료이다.
만약 gpu가 나오지 않는다면 재부팅을 하거나 경로설정을 다시 살펴보길 바란다.

profile
ENTP의 무지성 코딩

0개의 댓글