cuda 버전을 얻는 방법?


472

설치된 CUDA 버전을 확인하는 빠른 명령이나 스크립트가 있습니까?

설치 디렉토리에서 4.0 매뉴얼을 찾았지만 실제 설치된 버전인지 확실하지 않습니다.


130
$ nvcc --version일반적으로 관심있는 버전 번호입니다.
— Jared Hoberock


1
이 질문을 타겟팅하는 OS는 무엇입니까?
— nbro

설치 및 지원되는 런타임 또는 설치된 SDK에 대해 생각하십니까?
— Alexander Stohr

3
그러나 @JaredHoberock nvcc --version은 포함합니다 . The program 'nvcc' is currently not installed. You can install it by typing: sudo apt install nvidia-cuda-toolkitnvidia-smiCUDA Version: 10.1
— mrgloom

답변:


657

Jared가 명령 행에서 주석에 언급 한대로 :

nvcc --version

(또는 /usr/local/cuda/bin/nvcc --version)는 CUDA 컴파일러 버전 (툴킷 버전과 일치)을 제공합니다.

애플리케이션 코드에서 다음을 사용하여 런타임 API 버전을 조회 할 수 있습니다.

cudaRuntimeGetVersion()

또는 드라이버 API 버전

cudaDriverGetVersion()

Daniel이 지적했듯이 deviceQuery는 장치 기능과 함께 위를 쿼리하는 SDK 샘플 앱입니다.

다른 사람들이 지적했듯이, version.txt사용 의 내용을 확인할 수도 있습니다 (예 : Mac 또는 Linux)

cat /usr/local/cuda/version.txt

그러나에서 링크 된 것 이외의 다른 버전의 CUDA 툴킷이 설치된 /usr/local/cuda경우, 다른 버전이 PATH위에 있는 것 보다 부정확 한 버전을보고 할 수 있으므로주의해서 사용하십시오.


6
nvcc가 경로에 있다고 가정하면 nvcc --version은 Windows 명령 프롬프트에서 작동해야합니다.
— harrism

13
우분투에서는 nvidia-cuda-tools이 명령을 작동시키기 위해 설치해야 할 수도 있습니다. 그냥 입력sudo apt install nvidia-cuda-toolkit
— Oleg Kokorin

@OlegKokorin, 터미널 에서이 조언을 얻는다면 CUDA가 설치되지 않은 것 같습니다.
— VeLKerr

9
를 찾을 수 없으면에 nvcc있어야합니다 /usr/local/cuda/bin/.
— Rush

9
대한 upvote에 cat /usr/local/cuda/version.txt. nvcc --versionnvidia-toolkit을 설치 한 경우 널리 사용되는 방법 이지만 cuda 런타임 만있는 경우 nvcc가 없을 수 있습니다. @RutgerHofste가 지적한 경우 일 수 있습니다. 예 : ( Tensorflow 설정 지침 은 nvcc를 설치하지 않습니다)
— Kirill Pavlov

158

Ubuntu Cuda V8에서 :

$ cat /usr/local/cuda/version.txt

8
이것은 설치가 필요하지 않기 때문에 harrism의 답변보다 더 다양 nvcc합니다 (관리자 권한이 필요함)
— dinosaur

1
AWS Linux Deep Learning AMI에서 작동
— Rutger Hofste

15
이것을 사용하여 "CUDA 버전 8.0.61"을 얻었지만 nvcc --version은 "Cuda 컴파일 도구, 릴리스 7.5, V7.5.17"을 제공합니다. 불일치의 이유를 알고 있습니까?
— martinako

1
더 정확한 답변으로 찬성하여 CUDA 버전은 9.0.176이며 nvcc -V
— Kalpit에서

파일을 찾을 수 없음 오류가 발생하지만 nvcc는 버전 8.0을보고합니다. / usr / local / cuda는 존재하지 않습니다.
— Elias

41

당신이 실행하는 경우

nvidia-smi

comand 출력의 오른쪽 상단에 CUDA 버전이 있습니다. 적어도 CUDA 버전 10.0에 대한 출력을 찾았습니다. 여기에 이미지 설명을 입력하십시오


4
nvidia-smi이전 버전의 드라이버 버전 만 출력하는 것 같습니다 .
— mrgloom

21
CUDA 버전 디스플레이는 410.72 이후의 드라이버 버전에서만 작동합니다. CUDA가 설치되지 않은 경우에도 CUDA 버전이 표시됩니다. 따라서이 정보는 현재 의미가 없습니다. 참조 : devtalk.nvidia.com/default/topic/1045528/…
— Bruce Yo

7
이 답변은 드라이버 CUDA 버전 지원만을 나타냅니다. 어떤 CUDA 버전이 설치되어 있는지 또는 CUDA가 설치되어 있는지에 대한 정보는 제공하지 않습니다.
— talonmies

이 cuda 버전은 gpu cuda 기능 만 보여 주며 런타임 api에 사용되는 cuda 버전은 아닙니다.
— monti

22

CUDA 버전의 경우 :

nvcc --version

cuDNN 버전의 경우 :

Linux의 경우 :

cuDNN의 경로를 찾으려면 다음을 사용하십시오.

$ whereis cuda
cuda: /usr/local/cuda

그런 다음 이것을 사용하여 헤더 파일에서 버전을 가져옵니다.

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

Windows의 경우

cuDNN의 경로를 찾으려면 다음을 사용하십시오.

C:\>where cudnn*
C:\Program Files\cuDNN7\cuda\bin\cudnn64_7.dll

그런 다음 이것을 사용하여 헤더 파일에서 버전을 덤프하십시오.

type "%PROGRAMFILES%\cuDNN7\cuda\include\cudnn.h" | findstr CUDNN_MAJOR

CUDA SDK에 대해 이야기하고 있습니다. 아마도 CUDA 런타임과 드라이버에 관한 질문 일 것입니다. (또는 어쩌면 문제는 계산 능력에 관한 것이지만 그것이 사실인지 확실하지 않습니다.)
— Alexander Stohr

nvcc는 바이너리이며 버전을보고합니다. serparate 하위 디렉토리에는 여러 버전이 나란히있을 수 있습니다. / usr / local / cuda는 선택적 symlink이며 CUDA SDK가 설치된 경우에만 존재합니다.
— Alexander Stohr

21

우분투에서 :

시험

$ cat /usr/local/cuda/version.txt 또는 $ cat /usr/local/cuda-8.0/version.txt

때로는 폴더 이름이 "Cuda-version"입니다.

위의 방법으로도 작동하지 않으면 $ /usr/local/ Cuda 폴더의 올바른 이름을 찾아 보십시오 .

출력은 다음과 유사해야합니다. CUDA Version 8.0.61


그게 CUDA SDK에 관한 것입니다. CUDA 드라이버가 아닙니다.
— Alexander Stohr

13

다음 명령을 사용하여 Conda의 CUDA 설치를 확인하십시오.

conda list cudatoolkit

다음 명령은 conda가 설치 한 CUDNN 버전을 확인합니다.

conda list cudnn

CONDA를 통해 CUDA 및 CUDNN을 설치 / 업데이트하려면 다음 명령을 사용하십시오.

conda install -c anaconda cudatoolkit
conda install -c anaconda cudnn

또는 다음 명령을 사용하여 CUDA 설치를 확인할 수 있습니다.

nvidia-smi

또는

nvcc --version

Anaconda 패키지를 통해 tensorflow-gpu를 사용하는 경우 (콘솔에서 Python을 열고 간단히 기본 Python에 Anaconda, Inc.가 표시되는지 확인하거나 어떤 파이썬을 실행하고 위치를 확인할 수 있는지 확인) 수동으로 확인 CUDA와 CUDNN을 설치하면 작동하지 않을 것입니다. 대신 conda를 통해 업데이트해야합니다.

CUDA, CUDNN 또는 tensorflow-gpu를 수동으로 설치하려면 https://www.tensorflow.org/install/gpu 의 지침을 확인 하십시오.


10

CUDA SDK를 설치 한 경우 "deviceQuery"를 실행하여 CUDA 버전을 확인할 수 있습니다


4
궁금 사람들을 위해 : deviceQuery(: 실행 리눅스 빌드로 샘플 프로그램입니다 make에서 /usr/local/cuda/samples다음, ./bin/x86_64/linux/release/deviceQuery).
— Matthieu

4

CUDA-Z가 유용 할 수 있습니다. 여기는 해당 사이트에서 인용 한 것입니다.

"이 프로그램은 CPU-Z 및 GPU-Z와 같은 다른 Z 유틸리티의 패러디로 탄생했습니다. CUDA-Z는 CUDA 지원 GPU 및 GPGPU에 대한 기본 정보를 보여줍니다. nVIDIA Geforce, Quadro 및 Tesla 카드, ION과 함께 작동합니다. 칩셋. "

http://cuda-z.sourceforge.net/

지원 탭에는 소스 코드에 대한 URL이 있습니다 ( http://sourceforge.net/p/cuda-z/code/) . 다운로드는 실제로 설치 프로그램이 아니라 실행 파일 자체입니다 (설치 없음). ").

이 유틸리티는 많은 정보를 제공하며, 어떻게 파생되었는지 알아야 할 경우 소스가 있습니다. 검색 할 수있는 이와 유사한 다른 유틸리티가 있습니다.


이것은 Windows 플랫폼 용 프로그램입니다. 스크립트 내부에서 사용할 수 있습니까?
— Alexander Stohr

4

cuda터미널에 다음을 입력 하여 버전을 얻을 수 있습니다 .

$ nvcc -V

# below is the result
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2017 NVIDIA Corporation
Built on Fri_Nov__3_21:07:56_CDT_2017
Cuda compilation tools, release 9.1, V9.1.85

또는 먼저 다음을 사용하여 설치 디렉토리를 찾아 버전을 수동으로 확인할 수 있습니다 .

$ whereis -b cuda         
cuda: /usr/local/cuda

그런 다음 cd해당 디렉토리로 가서 CUDA 버전을 확인하십시오.


3

CUDA를 설치 한 후 다음 방법으로 버전을 확인할 수 있습니다. nvcc -V

5.0과 5.5를 모두 설치 했으므로

Cuda Compilation Tools, 릴리스 5.5, V5.5,0

이 명령은 Windows와 Ubuntu 모두에서 작동합니다.


3

위에서 언급 한 것 외에도 CUDA 설치 경로 (설정 중에 변경되지 않은 경우)에는 일반적으로 버전 번호가 포함됩니다

하고 which nvcc경로를 제공해야하고 당신에게 버전을 줄 것이다

추신 : 이것은 빠르고 더러운 방법입니다. 위의 답변은보다 우아하며 상당한 노력으로 올바른 버전이됩니다.


얻기 /usr/bin/nvcc. nvcc --version갈 길입니다.
— Íhor Mé

3

먼저 Cuda가 설치된 위치를 찾아야합니다.

이 같은 기본 설치의 경우 여기에이 위치가되어야합니다 :

우분투의 경우 :

/ usr / local / cuda

이 폴더에는 파일이 있어야합니다

version.txt

텍스트 편집기로이 파일을 열거 나 다음을 실행하십시오.

cat version.txt

폴더에서

또는

 cat /usr/local/cuda/version.txt 


2

Linux에서 실행중인 경우 :

dpkg -l | grep cuda

1

나는 / usr / local을 얻습니다-그러한 파일이나 디렉토리가 없습니다. nvcc -V는

nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

0

CUDA Runtime API C ++ 래퍼를 사용하여 프로그래밍 방식으로 :

auto v1 = cuda::version::maximum_supported_by_driver();
auto v2 = cuda::version::runtime();

이를 통해 다음 cuda::version_t과 같이 비교하고 스트리밍 할 수 있는 구조가 제공됩니다 .

if (v2 < cuda::version_t{ 8, 0 } ) {
    std::cerr << "CUDA version " << v2 << " is insufficient." std::endl;
}

0

다음을 사용하여 CUDA의 버전을 확인할 수 있습니다

nvcc -V

또는 당신은 사용할 수 있습니다

nvcc --version

또는 CUDA가 사용중인 위치를 확인할 수 있습니다

whereis cuda 

그리고 나서

cat location/of/cuda/you/got/from/above/command
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.