반응형

Ubuntu 22.04에 CUDA를 설치하는 방법을 다룹니다. 

 

2022. 12. 2  최초작성

2022. 12. 17



현재 그래픽 카드 드라이버 확인

1. 다음 명령을 사용하여 사용중인 그래픽 카드 모델과 그래픽 드라이버를 확인할 수 있습니다. 

$ sudo lshw -c display

 

product 항목에 그래픽 카드 이름이 표시됩니다. 아래 스크린샷에서는 GeForce GTX 1660 Ti Mobile입니다. 

configuration 항목에 그래픽 카드 드라이버 이름이 표시됩니다. 아래 스크린샷에서는 nouveau 입니다. 

nouvenu일 경우 NVIDIA 그래픽 카드 드라이버를 사용하지 않는 상태라는 의미입니다. 

NVIDIA 그래픽 카드 드라이버가 설치되어있다면 nvidia로 표시됩니다.

 

 

2. 다음 방법으로도 NVIDIA 그래픽 카드 드라이버를 사용중인지 확인할 수 있습니다. 

왼쪽 아래에 보이는 프로그램 표시 아이콘을 클릭하여 소프트웨어 & 업데이트를 실행합니다. 

 

3. 우분투 22.04를 설치한 후에 확인해보니,NVIDIA 드라이버가 아닌 대안 드라이버를 사용하고 있는 상태입니다. 독점 드라이버를 사용하지 않고 있습니다라고 아래쪽에 출력됩니다.

 

NVDIA 그래픽 카드 드라이버가 설치되어 있다면 아래쪽에 독점 드라이버 1개를 사용하고 있습니다라고 출력되며 위에 보이는 드라이버 항목중 하나가 체크된 상태입니다. 

 

4. NVIDA 그래픽 카드가 현재 우분투에 설치되어있는지 여부에 따라 CUDA 설치방법이 달라집니다. 

 

NVIDIA 그래픽 카드 드라이버가 이미 설치되어 있다면 CUDA 설치 방법 1을 사용하면 안됩니다. 왜냐하면 CUDA를 deb 패키지로 설치하면서 그래픽 카드 드라이버도 설치되기 때문에 문제가 발생합니다. 대신 CUDA 설치방법 2를 진행하세요. CUDA설치시 그래픽 카드 드라이버는 제외하고 설치를 진행하기 때문에 문제가 발생하지 않습니다.

 

NVIDIA 그래픽 카드 드라이버가 설치 안되어 있다면 CUDA 설치 방법 1를 사용하거나 아래 포스트 따라 NVIDIA 그래픽 카드 드라이버를 설치한 후, CUDA 설치 방법 2를 진행하세요.  

 

Ubuntu 22.04에 NVIDIA 그래픽 카드 드라이버 설치

https://webnautes.tistory.com/1775 



CUDA 설치 방법 1

NVIDIA 그래픽 카드 드라이버가 설치되지 않은 경우 진행하세요.

 

0. 아래 링크에서 CUDA Toolkit 11.8.0을 선택합니다. 글 작성시점에서 Tensorflow 2.11이 동작하지 않기 때문에 CUDA Toolkit 12.0.0을 사용할 수 없습니다. 

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

 

1. Linux,  x86_64, Ubuntu, 22.04, deb(local)을 차례로 선택합니다. 

 

2. 선택 완료 후, 그 아래에 다음처럼 보이는 명령을 한줄씩 실행하여 설치를 진행합니다.

sudo dpkg -i cuda~ 명령에서 락 걸렸다는 에러가 나는 경우 재부팅을 하거나 해당 업데이트 관련 프로세스를 kill 명령으로 종료시키고 진행해야 합니다. 

 

 

3. 그래픽카드 드라이버가 바뀌도록  재부팅을 해줘야 합니다.

 

4. cuDNN 설치를 진행하세요. 



CUDA 설치 방법 2

NVIDIA 그래픽 카드 드라이버가 이미 설치된 경우 진행하세요.

 

0. 아래 링크에서 CUDA Toolkit 11.8.0을 선택합니다. 글 작성시점에서 Tensorflow 2.11이 동작하지 않기 때문에 CUDA Toolkit 12.0.0을 사용할 수 없습니다. 

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

 

1. Linux,  x86_64, Ubuntu, 22.04, runfile(local)을 차례로 선택합니다. 

 

2. 선택 완료 후, 그 아래에 다음처럼 보이는 명령을 한줄씩 실행하여 설치를 진행합니다.

 

아래 화살표 키 눌러 Continue로 바꾼 후, 엔터키를 누릅니다.

 

accept를 입력한 후, 엔터를 누릅니다.

 

Driver에서 스페이스바를 눌러 체크해제하고 Install로 이동하여 엔터키를 누릅니다.

설치 완료후 다음처럼 출력됩니다.



3. cuDNN 설치를 진행하세요. 



cuDNN 설치

1. 아래 링크에 접속 합니다. 

https://developer.nvidia.com/cudnn 

 

 

2. Download cuDNN을 클릭합니다. 

 

3. Login을 클릭합니다. NVIDIA 계정이 아직 없다면 Join now를 클릭하여 생성해야 합니다. 

 

4. 로그인을 진행합니다. 

 

5. I Agree 앞에 있는 체크박스를 클릭한 후,  “Download cuDNN v8.7.0, for CUDA 11.x”를 클릭합니다. 

버전은 포스트와 다를 수 있습니다.

 

6. 목록에서 “Local Installer for Linux x86_64 (Tar)”를 클릭합니다. 다운로드 폴더에 다운로드 되도록 합니다. 

 

7. 다운로드 받은 위치로 이동합니다.

cd ~/다운로드



8. 다음 명령으로 압축을 풀어줍니다. 압축파일 이름은 포스트에 있는 이름과 다를 수 있으니 유의하세요.

tar xvf cudnn을 입력 후, tab키를 누르면 파일 이름이 완성되는 것을 사용하면 편합니다. 

 

tar xvf cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz 



9. 다음 명령으로 필요한 파일을 복사해줍니다. 

 

sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include 

sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64 

sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*



10. 편집기를 사용하여 .bashrc 파일을 열어서 끝에 다음 한줄을 추가해야 합니다. 

 

간단히 설명하면

nano 편집기를 사용해서 .bashrc 파일을 열어줍니다.

sudo nano ~/.bashrc

 

다음 한 줄을 복사한 후, 화살표키로 .bashrc 파일 끝으로 이동한 후, 마우스 우클릭하여 메뉴에서 붙여넣기를 클릭하여 붙여넣기합니다. 

또는 단축키 Ctrl + Shift + V를 눌러도 붙여놓기가 됩니다.

빨간색 부분은 설치한 cuda 버전에 따라 달라져야 합니다.

 

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

 

Ctrl + O를 누른 후, 엔터를 입력하여 저장한 후, Ctrl + X를 눌려 nano 편집기를 종료합니다.



11. 환경 적용을 위해 다음 명령을 실행합니다. 

$ source ~/.bashrc



12. nvidia-smi 명령을 실행하여 그래픽 카드 드라이버와 CUDA가 제대로 설치된 것을 확인합니다.

글 작성 시점에서는 오른쪽 위에 Driver Version이 525이고 CUDA 버전이 12.0 또는 11.8로 보입니다. 



13. 이제 제대로 설치되었는지 확인합니다. 

참고 https://xcat-docs.readthedocs.io/en/stable/advanced/gpu/nvidia/verify_cuda_install.html   



다음 명령을 실행합니다. 빨간색 부분은 설치한 cuda 버전에 따라 달라져야 합니다. 

/usr/local/cuda-11.8/extras/demo_suite/deviceQuery



실행후, 마지막 줄에 다음처럼 PASS가 출력되면 잘 설치가 된 것입니다. 

CUDA Driver 버전과 CUDA Runtime버전이 다르게 보입니다.

 

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 12.0, CUDA Runtime Version = 11.8, NumDevs = 1, Device0 = NVIDIA GeForce GTX 1660 Ti

Result = PASS








반응형

진행해본 결과물을 기록 및 공유하는 공간입니다.
잘못된 부분이나 개선점을 알려주시면 반영하겠습니다.


소스코드 복사시 하단에 있는 앵커 광고의 왼쪽 위를 클릭하여 닫은 후 해야 합니다.


문제가 생기면 포스트와 바뀐 환경이 있나 먼저 확인해보세요.
질문을 남겨주면 가능한 빨리 답변드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

TistoryWhaleSkin3.4">