우분투 cuda 설치 - ubuntu cuda seolchi

2022-07-12 2 분 소요

ubuntu 20.04, nvidia driver 495, cuda 11.3, cudnn 8.2.1, pytorch 버전을 설치하는 방법입니다.
우분투에서 파이썬 가상환경도 만들어봅니다.

기존 nvidia, cuda 완전 삭제

  • 혹시 우분투에 nvidia, cuda를 설치한 적이 있다면 해당 명령어를 터미널에 실행해보길 바란다. 1

    $ sudo apt-get purge nvidia*

    $ sudo apt-get autoremove

    $ sudo rm -rf /usr/local/cuda*

설치가능한 드라이버 확인

  • 그래픽 카드 및 설치 가능한 드라이버를 다음 명령어로 확인해본다.

  • 이제 설치하고픈 버전을 골라 설치하거나, 자동으로 드라이버를 설치한다. 2
  • 본인은 nvidia-driver-495로 설치해보겠다.

    # 자동으로 드라이버 설치 $ sudo ubuntu-drivers autoinstall

    # 원하는 버전 설치 $ sudo apt install nvidia-driver-495

  • nvidia 드라이버 설치가 끝나면 NVIDIA kernel module의 load를 도와주는 modprobe 패키지를 설치한다. 3

    $ sudo apt-get install dkms nvidia-modprobe

  • 그리고 다음 명령어로 마무리해준다.

    $ sudo apt update $ sudo apt upgrade # 재부팅 $ sudo reboot

  • 재부팅 후 설치가 잘 되었는지 확인하기 위해 다음 명령어를 실행해본다.
  • 아래처럼 잘 나오면 설치가 잘 된것이다.

cuda 11.3 설치

  • cuda 11.3을 설치하기 위해 해당 사이트에 들어간다.
  • NVIDIA DEVELOPER - CUDA Toolkit Archive
  • 그 다음, linux -> x86_64 -> Ubuntu -> 20.04 -> runfile(local)로 가 해당 명령어를 실행한다.

# runfile(local) $ wget //developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run $ sudo sh cuda_11.3.1_465.19.01_linux.run

# 만약 위 과정이 안되면 아래 명령어를 실행한다. - deb(local) $ wget //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 //developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda-repo-ubuntu2004-11-3-local_11.3.1-465.19.01-1_amd64.deb $ sudo dpkg -i cuda-repo-ubuntu2004-11-3-local_11.3.1-465.19.01-1_amd64.deb $ sudo apt-key add /var/cuda-repo-ubuntu2004-11-3-local/7fa2af80.pub $ sudo apt-get update $ sudo apt-get -y install cuda

  • Continue 후, accept, 그 다음 Driver 선택을 해제후 Install 한다.

  • 설치가 잘 진행되었다면 아래 그림처럼 나올 것이다.

만약 gcc가 없어서 문제가 발생한다면, 다음 명령어를 수행한다.

$ sudo apt update $ sudo apt install build-essential $ sudo apt-get install manpages-dev

  • cuda 버전을 확인하고 싶으면, 다음 명령어를 실행한다.

  • CUDA Toolkit 관련 설정을 환경 변수에 추가하기 위해 다음 명령어를 실행한다. 4

    $ sudo sh -c "echo 'export PATH=$PATH:/usr/local/cuda-11.3/bin'>> /etc/profile" $ sudo sh -c "echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.3/lib64'>> /etc/profile" $ sudo sh -c "echo 'export CUDARDIR=/usr/local/cuda-11.3'>> /etc/profile" $ source /etc/profile

cuDNN 설치

  • cuDNN을 설치하기 위해 해당 사이트에 접속한다.
    • NVIDIA cuDNN
  • NVIDIA 계정이 있어야 한다. 없다면 회원가입해야 한다는 점 유의한다.
  • 그림에 표시한대로 따라 다운로드 받는다.

  • 다운로드 받은 파일을 압축풀어 파일을 복사한다.
    • 복사 명령어 : cp [복사할 디렉토리/파일] [복사될 디렉토리/파일]
    • 압축 풀기 명령어 : tar xvzf [압축 파일명]
    • *은 모든 것을 포함한다는 의미

      $ tar xvzf cudnn-11.3-linux-x64-v8.2.1.32.tgz $ sudo cp cuda/include/cudnn* /usr/local/cuda/include $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 $ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 $ sudo ln -sf /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn.so.8.2.1 /usr/local/cuda-11.3/targets/x86_64-linux/lib/libcudnn.so.8

  • 새로 추가된 라이브러리를 시스템에서 찾을 수 있도록 한다.

  • 다음은 설정이 제대로 되었는지 확인하기 위한 명령어이다.

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

python 가상환경 설치

  • 먼저 python 버전을 확인하고, venv를 설치해준다. 5

    $ python3 --version $ sudo apt-get install python3-venv

  • 그다음, 원하는 이름으로 가상환경을 생성한다.

    $ python3 -m venv [가상환경 이름] # 예시로 $ python3 -m venv tf2.8

  • 다음은 가상환경를 활성화하는 과정이다.
  • 활성화하면 터미널 앞에 가상환경 이름이 나타날 것이다.

    $ source [가상환경 이름]/bin/activate # 예시로 $ source tf2.8/bin/activate

  • deactivate를 실행하면, 가상환경은 종료된다.

pytorch 및 필수 패키지 설치

  • 가상환경을 활성화했다면 다음 패키지를 설치해준다.
    • pytorch는 cuda 11.3에 맞는 버전이다.
    • pytorch 버전을 알고 싶으면 다음 사이트를 참고하길 바란다.
    • pytorch.org - get_started
  • 그외 필요한 패키지는 아래와 같은 방식으로 설치해주면 된다.

    $ pip install --upgrade pip --user $ pip install pandas matplotlib seaborn scipy sklearn $ pip install jupyter notebook $ pip install ipykernel $ python -m ipykernel install --user --name 가상환경이름 --display-name 표시할 가상환경 이름 $ pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url //download.pytorch.org/whl/cu113

References

Toplist

최신 우편물

태그