Ubuntu에서 CUDA 버전 확인 방법【간단 명령어 안내】

目次

1. 소개

CUDA(Compute Unified Device Architecture)는 NVIDIA가 개발한 GPU를 이용한 병렬 계산 플랫폼입니다. 머신러닝, 딥러닝, 3D 렌더링 등 많은 계산 작업에 사용됩니다. Ubuntu 환경에서 CUDA를 사용할 때, 다음 이유로CUDA 버전을 확인하는 것이 중요합니다.

드라이버와의 호환성

CUDA는 특정 NVIDIA 드라이버 버전과 대응하고 있으며, 호환성이 없으면 정상적으로 동작하지 않을 수 있습니다.

라이브러리 호환 상황

TensorFlow와 PyTorch와 같은 라이브러리는 특정 CUDA 버전과 cuDNN 버전을 요구하므로, 적절한 버전을 설치했는지 확인이 필요합니다.

환경 혼란 방지

시스템에 여러 CUDA 버전이 설치된 경우, 어떤 버전이 활성화되어 있는지 파악하고 필요에 따라 전환해야 합니다. 본 기사에서는Ubuntu에서 CUDA 버전을 확인하는 방법을 쉽게 설명합니다.

2. Ubuntu에서 CUDA 버전을 확인하는 방법

Ubuntu 환경에서는, 아래 방법으로 CUDA 버전을 확인할 수 있습니다.

방법1: nvidia-smi 명령으로 확인(가장 간단한 방법)

NVIDIA 드라이버에는 GPU 상태를 확인하는 도구 nvidia-smi(NVIDIA System Management Interface)가 포함되어 있습니다.

실행 명령

nvidia-smi

출력 예

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 530.41.03    Driver Version: 530.41.03    CUDA Version: 12.1     |
+-----------------------------------------------------------------------------+

요점

  • CUDA Version: 12.1 부분이 NVIDIA 드라이버가 지원하는 최대 CUDA 버전입니다.
  • 실제로 설치된 CUDA 툴킷 버전과 다를 수 있는 가능성이 있기 때문에, 다음 방법도 확인해 봅시다.

방법2: nvcc -V 명령으로 확인(개발자용)

CUDA가 올바르게 설치된 경우, nvcc(CUDA 컴파일러)의 버전을 확인할 수 있습니다.

실행 명령

nvcc -V

출력 예

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Sun_Jul_30_19:09:40_PDT_2023
Cuda compilation tools, release 12.1, V12.1.105

요점

  • release 12.1, V12.1.105실제로 설치된 CUDA 툴킷 버전
  • nvidia-smi에 표시되는 버전과 일치하지 않을 수 있으므로 주의가 필요합니다.

방법3: version.txt 확인(수동 확인)

CUDA가 /usr/local/cuda에 설치된 경우, version.txt에 버전 정보가 기록되어 있습니다.

실행 명령

cat /usr/local/cuda/version.txt

출력 예

CUDA Version 12.1.105

요점

  • nvcc -V를 사용할 수 없는 환경에서도 확인 가능.
  • /usr/local/cuda올바르게 심볼릭 링크되어 있는지 확인이 필요합니다.

3. cuDNN 버전 확인 방법

cuDNN(CUDA Deep Neural Network)은 딥러닝용 라이브러리로, CUDA와 함께 사용됩니다。 CUDA 버전 확인과 함께 cuDNN 버전도 확인하는 것이 중요합니다。

방법1: cudnn_version.h 확인

cuDNN 버전은 헤더 파일 cudnn_version.h에 기록되어 있습니다。

실행 명령

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

출력 예시

#define CUDNN_MAJOR 8
#define CUDNN_MINOR 9
#define CUDNN_PATCHLEVEL 1

포인트

  • cuDNN 8.9.1이 설치되어 있음을 알 수 있다。
  • grep 명령을 사용하면 cuDNN 버전 정보를 쉽게 가져올 수 있다。
  • cuDNN 버전과 CUDA 버전은 호환성이 있으므로 적절한 조합을 확인하는 것이 중요하다。

방법2: dpkg 명령으로 확인(Debian 계열 Linux만)

Ubuntu와 같은 Debian 계열 Linux에서는 dpkg 명령을 사용해 설치된 cuDNN 버전을 확인할 수 있다。

실행 명령

dpkg -l | grep libcudnn

출력 예시

ii  libcudnn8    8.9.1-1+cuda12.1    amd64    NVIDIA cuDNN Library

포인트

  • libcudnn8 8.9.1-1+cuda12.1 부분에서 cuDNN 버전(8.9.1)을 확인한다。
  • cuda12.1 부분에서 해당 CUDA 버전(12.1)을 확인한다。
이러한 방법을 활용하여 CUDA 환경이 적절히 설정되어 있는지 확인하자。

4. 복수의 CUDA 버전이 설치된 경우의 대처 방법

Ubuntu 환경에서는 복수의 버전을 설치할 수 있지만, 환경에 따라 어떤 버전이 활성화되어 있는지 혼란스러울 수 있습니다。 이러한 경우, 적절하기 전환을 해야 합니다.

방법1: update-alternatives

Ubuntu에서는 update-alternatives 를 이용하여 CUDA 버전을 전환할 수 있습니다.

현재 설정을 확인

update-alatives --query cuda

버전 전환

sudo update-alternatives --config cuda

출력 예시

There are 3 choices for the alternative cuda (providing /usr/local/cuda).

  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/local/cuda-11.8  100       auto mode
  1            /usr/local/cuda-10.2  50        manual mode
  2            /usr/local/cuda-  100       manual mode
  3            /usr/local/cuda-12.1  110       manual mode

Press <enter> to keep the current choice[*], or type selection number:

포h>

update-alternatives --config cuda
    를 실행하면, 사용 가능한 CUDA 버전 목록이 표시됩니다.
  • 숫자를 입력함으로써, 사용할 CUDA 버전을 선택할 수 있습니다.
  • auto modemanual mode가 있으며, 수동으로 전환할 경우 manual mode를 선택합니다.

방법2: 심볼릭 링크를 수동으로 설정하기

심볼릭 링크를 사용하여 지정한 버전의 CUDA를 활성화하는 것도 가능합니다.

기존 심볼릭 링크 확인

ls -l /usr/local/cuda

출력 예시

lrwxrwxrwx 1 root root 20 Feb  1 12:34 /usr/local/cuda -> /usr/local/cuda-11.8

CUDA 버전 변경

sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-12.1 /usr/local/cuda

확인

ls -l /usr/local/cuda

포인트

  • /usr/local/cuda는 CUDA의 기본 경로로 사용되, 이를 변경으로써 CUDA 버전을 전환할 수 있습니다.
  • ln -s 명령으로 새로운 버전의 CUDA에 링크를 생성함으로써, 쉽게 전환이 가능합니다.
이러한 방법을 이용하면, 복수의 CUDA 버전이 설치된 경우에도 적절한 버전을 선택하여 사용할 수 있습니다.

5. 자주 묻는 질문(FAQ)

CUDA 버전 확인에 관해 자주 묻는 질문을 정리했습니다. 문제가 발생했을 때 참고하세요.

Q1: nvcc -V 를 찾을 수 없습니다!

nvcc 명령을 찾을 수 없는 경우, CUDA 경로가 설정되지 않았을 가능성이 있습니다.

해결책 1: CUDA가 설치되어 있는지 확인

ls /usr/local/cuda/

해결책 2: nvcc 경로 추가

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
이제 nvcc -V 를 실행하여 버전이 올바르게 표시되는지 확인하세요.

Q2: nvidia-smi 에 표시되는 CUDA 버전이 실제와 다른 이유는?

nvidia-smi 에 표시되는 CUDA 버전은 NVIDIA 드라이버가 지원하는 최대 CUDA 버전 입니다.

확인 방법:

nvidia-smi

출력 예:

CUDA Version: 12.1
하지만 실제 설치된 CUDA 버전을 확인하려면 nvcc -V 또는 version.txt 를 확인해야 합니다.

Q3: CUDA와 cuDNN의 호환성을 확인하려면?

CUDA와 cuDNN의 호환성은 NVIDIA 공식 지원 매트릭스를 참조하는 것이 가장 확실합니다.

공식 사이트:

NVIDIA cuDNN Support Matrix 또한, 아래 명령으로 설치된 버전을 확인하고 적절한 조합인지 확인하세요.

CUDA 버전 확인

nvcc -V

cuDNN 버전 확인

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
이처럼 환경을 적절히 관리함으로써 CUDA와 cuDNN 문제를 회피할 수 있습니다.

6. 요약

본 기사에서는 Ubuntu 환경에서 CUDA 버전을 확인하는 방법에 대해 자세히 설명했습니다。 중요한 포인트를 되짚어 봅시다。

CUDA 버전 확인 방법

방법명령특징
nvidia-sminvidia-smi드라이버가 지원하는 CUDA 버전을 확인
nvcc -Vnvcc -V실제로 설치된 CUDA 툴킷의 버전을 확인
version.txtcat /usr/local/cuda/version.txt수동으로 CUDA 버전을 확인

cuDNN 확인 방법

방법명령특징
cudnn_version.hcat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2헤더 파일에서 버전을 확인
dpkg 명령dpkg -l | grep libcudnn설치된 cuDNN 버전을 확인

CUDA 버전 전환 방법

방법명령특징
update-alternativessudo update-alternatives --config cuda여러 CUDA 버전을 전환
심볼릭 링크sudo ln -s /usr/local/cuda-XX.X /usr/local/cuda수동으로 CUDA 버전을 변경

요약 포인트

  • CUDA 버전을 정확히 파악하는 것이 중요
  • cuDNN과의 호환성을 확인하고 적절한 조합을 사용
  • 여러 CUDA 버전을 사용할 경우, 버전 전환 방법을 이해해 두는 것이 중요
환경을 적절히 관리함으로써 CUDA 기능을 최대한 활용할 수 있습니다。 이 글이 당신의 Ubuntu 환경에서 CUDA 버전 확인에 도움이 되길 바랍니다。

관련 기사

관련

1. 소개 CUDA(Compute Unified Device Architecture)는 NVIDIA가 제공하는 병렬 컴퓨팅 플랫폼 및 API이며, GPU를 활용한 고속 계산 처리를 가능하게 합니다. 기계 학습 및[…]

관련

1. Ubuntu에서 Nvidia 드라이버를 사용하는 이유 Ubuntu는 기본적으로 오픈소스 Nouveau 드라이버를 제공하지만, Nvidia 공식 드라이버를 설치하면 더 높은 성능을 끌어낼 수 있습니다. 특히 게[…]

관련

1. 소개 Ubuntu에서 GPU를 활용할 때는 그 상태를 정확히 확인하는 것이 중요합니다. 특히, 딥러닝이나 그래픽 렌더링 작업에서는 GPU 사용 상황과 드라이버 버전을 파악하는 것이 필수입니다. 이 기사에서는 […]