- NVIDIA는 2022년 5월 R515 드라이버로 GPL과 MIT 듀얼 라이센스로 리눅스 GPU 커널 모듈을 오픈 소스로 공개함
- 당시 데이터센터 컴퓨팅 GPU를 대상으로 했고 GeForce, Workstation GPU는 알파 상태였음
- 이후 릴리즈에서 더 강력하고 완전한 기능의 GeForce와 Workstation 리눅스 지원이 제공될 것이며, NVIDIA 오픈 커널 모듈이 궁극적으로 폐쇄형 드라이버를 대체할 것이라고 발표함
- 2년이 지난 지금, 오픈 소스 GPU 커널 모듈로 동등하거나 더 나은 애플리케이션 성능을 달성하고 다음과 같은 상당한 새로운 기능을 추가함:
- 이기종 메모리 관리(HMM) 지원
- 기밀 컴퓨팅
- Grace 플랫폼의 일관된 메모리 아키텍처
- 기타 등등
- 이제 오픈 소스 GPU 커널 모듈로 완전히 전환하는 것이 적절한 시점이며, 다가오는 R560 드라이버 릴리스에서 이러한 변화를 적용할 예정임
지원되는 GPU
- 모든 GPU가 오픈 소스 GPU 커널 모듈과 호환되는 것은 아님
- NVIDIA Grace Hopper나 NVIDIA Blackwell 같은 최신 플랫폼은 반드시 오픈 소스 GPU 커널 모듈을 사용해야 하며 이들 플랫폼에서 독점 드라이버는 지원되지 않음
- Turing, Ampere, Ada Lovelace, Hopper 아키텍처의 신형 GPU는 오픈 소스 GPU 커널 모듈로 전환하는 것이 권장됨
- Maxwell, Pascal, Volta 아키텍처의 구형 GPU는 오픈 소스 GPU 커널 모듈과 호환되지 않으므로 계속 NVIDIA 독점 드라이버 사용
- 동일한 시스템에서 구형과 신형 GPU가 혼재된 배포의 경우 독점 드라이버 계속 사용
- NVIDIA는 어떤 드라이버를 선택해야 할지 안내해 주는 새로운 감지 도우미 스크립트를 제공함. 자세한 내용은 이 포스트 뒷부분의 "설치 도우미 스크립트 사용" 섹션 참조
설치 프로그램 변경 사항
- 일반적으로 모든 설치 방법에 의해 설치되는 드라이버의 기본 버전이 독점 드라이버에서 오픈 소스 드라이버로 전환되고 있음. 특별한 주의가 필요한 몇 가지 특정 시나리오가 있음:
- CUDA 메타패키지가 포함된 패키지 매니저
- 실행 파일
- 설치 도우미 스크립트
- 패키지 매니저 세부 정보
- Windows 서브시스템 for Linux
- CUDA 툴킷
CUDA 메타패키지가 포함된 패키지 매니저 사용
- 패키지 매니저(run 파일이 아님)를 사용하여 CUDA 툴킷을 설치할 때 설치 메타패키지가 존재하며 일반적으로 사용됨. 최상위
cuda패키지를 설치하면 CUDA 툴킷과 연결된 드라이버 릴리스가 조합되어 설치됨.
실행 파일 사용
- CUDA 또는 NVIDIA 드라이버를
.run파일을 사용하여 설치하는 경우 설치 프로그램이 하드웨어를 쿼리하고 시스템에 가장 적합한 드라이버를 자동으로 설치함. UI 토글을 사용하여 독점 드라이버와 오픈 소스 드라이버 중에서 선택할 수도 있음.
설치 도우미 스크립트 사용
- 앞서 언급한 대로 시스템의 GPU에 어떤 드라이버를 선택해야 할지 확실하지 않은 경우 NVIDIA가 선택 과정을 안내하는 도우미 스크립트를 만듦.
- 사용하려면, 먼저
nvidia-driver-assistant패키지를 패키지 매니저로 설치한 다음 스크립트를 실행하면 됨
패키지 매니저 세부 사항
- 일관된 경험을 위해 NVIDIA는 CUDA 툴킷과 드라이버를 설치할 때 패키지 매니저를 사용할 것을 권장함. 그러나 다양한 배포판에서 사용되는 특정 패키지 관리 시스템이나 패키지 구조는 특정 배포판에 따라 다를 수 있음.
- 이 섹션에서는 다양한 플랫폼에 필요한 구체적인 세부 사항, 주의 사항 또는 마이그레이션 단계를 설명함.
Windows 서브시스템 for Linux
- Windows 서브시스템 for Linux(WSL)는 호스트 Windows 운영 체제의 NVIDIA 커널 드라이버를 사용함. 이 플랫폼에 특정 드라이버를 설치해서는 안 됨. WSL을 사용하는 경우 변경이나 조치가 필요하지 않음.
CUDA 툴킷
- CUDA 툴킷의 설치는 패키지 매니저를 통해 변경되지 않음. 다음 명령을 실행하면 됨:
$ sudo apt-get/dnf/zypper install cuda-toolkit
더 많은 정보
- NVIDIA 드라이버 또는 CUDA 툴킷 설치 방법에 대한 자세한 내용은 CUDA 설치 가이드의 "드라이버 설치" 섹션을 참조
GN⁺의 의견
-
NVIDIA가 GPU 커널 모듈을 오픈 소스로 제공하는 것은 GPU 컴퓨팅 생태계에 매우 긍정적인 변화임. 이를 통해 사용자와 개발자는 NVIDIA GPU 드라이버와 관련된 문제를 보다 쉽게 디버깅하고 해결할 수 있게 됨.
-
오픈 소스 전환으로 HPC, AI, 기계 학습 등의 분야에서 NVIDIA GPU를 활용하는 사용자들에게 더 많은 유연성과 투명성이 제공될 것임. 특히 기업 환경에서 NVIDIA GPU 솔루션 도입 시 보안과 안정성에 대한 우려를 해소하는 데 도움이 될 것임.
-
다만 오픈 소스 전환 과정에서 기존 독점 드라이버 기반 애플리케이션과의 호환성 문제가 발생할 수 있음. NVIDIA는 이에 대한 명확한 가이드라인과 마이그레이션 경로를 제시해야 할 것임.
-
AMD의 ROCm과 같은 경쟁 오픈 소스 GPU 컴퓨팅 플랫폼과의 비교도 흥미로운 주제가 될 수 있음. NVIDIA의 오픈 소스 전환으로 GPU 컴퓨팅 분야에서의 경쟁이 심화될 것으로 예상됨.
-
앞으로 NVIDIA가 커뮤니티의 기여를 적극적으로 수용하고, 오픈 소스 GPU 커널 모듈의 성능과 안정성을 지속적으로 개선해 나가기를 기대함. 이는 GPU 컴퓨팅의 대중화와 혁신을 가속화하는 데 기여할 것임.