2016-11-14 1 views
4

CUDA의 기능은 cudaRuntimeGetVersion()cudaDriverGetVersion()입니다 (자세한 내용은 here 참조). 처음에는 "8.0"(CUDA 8.0)을주고, 두 번째 것은 NVIDIA의 GPU 드라이버 커널 모듈을 검사 할 때와 같은 문자열을 내 보냅니다.CUDA 런타임 버전과 CUDA 드라이버 버전의 차이점은 무엇입니까?

modinfo nvidia | grep "^version:" | sed 's/^version: *//;' 

이 시스템은 367.57입니다. 자, 첫 번째 호출은 나에게 8000 - 괜찮아요, 8.0을 말하는 이상한 방법이라고 생각합니다. 두 번째 API 호출도 8000이됩니다. 그렇다면이 둘은 무엇을 의미합니까? 즉, CUDA는 독립적 인 "런타임"및 "드라이버"패키지로 구성되지 않습니다.

내가 링크 된 런타임 API 문서는 설명하지 않습니다.

답변

4

CUDA 런타임 버전은 설치된 cudart (CUDA 런타임) 라이브러리와 관련하여 CUDA 호환성 (즉, 버전)을 나타냅니다.

CUDA 드라이버 버전 (여기에보고 된 내용)은 드라이버와 관련하여 과 동일한 정보를보고합니다.

이것은 CUDA의 드라이버 호환성 모델과 관련이 있습니다. CUDA 툴킷 버전 (즉, CUDA 런타임 라이브러리 버전, nvcc 컴파일러 버전 등) requires a particular minimum driver level for proper use이 툴킷으로 컴파일되었습니다.

CUDA 드라이버 버전 (여기에보고 된 바와 같이)은 특정 설치된 드라이버에 의해을 지원할 수있는 CUDA 버전을 효과적으로보고합니다.

이미 발견 했으므로 실제로 번호가 매겨진 드라이버 버전은보고하지 않습니다.

+0

(한숨) 지금 받으십시오. 그래서 혼란스러운 이름을 탓할 수 있습니다. 고마워요. 당신은 저에게 [이] (https://github.com/eyalroz/cuda-api-wrappers) 할 일을 조금 주셨습니다. – einpoklum

+0

또한 정확히 어떻게 8000을 해석합니까? 3 개의 가장 작은 십진수는 하나의 '부 버전 번호'입니까, 아니면 8.0.0 또는 8.0.0.0과 같은 것입니까? 결국 CUDA 8.0 릴리스는 지난 번에 8.0.44로 명명되었습니다. – einpoklum

+1

해석 힌트를위한'deviceQuery' cuda 샘플 코드를 연구하십시오. 여기에는 하위 버전이 없습니다. 8000 = 쿠다 8 –

관련 문제