CUDA 11.6 툴킷에서 주목할 새로운 것들…
CUDA 최신 릴리즈인 11.6이 얼마 전 공개되었습니다. 이번 릴리즈는 CUDA 애플리케이션의 프로그래밍 모델 및 성능 향상에 초점을 맞추었다고 합니다. 11.6 릴리즈의 몇 가지 중요한 개선 사항을 알아보겠습니다.

GSP 드라이버 아키텍처
GSP 드라이버 아키텍처가 이제 Truring, Ampere GPU의 기본 드라이버 모드로 지정되었습니다. 그렇다고 이전 드라이버 모드 지원이 중단된 것은 아니라고 하네요. 참고로 GSP는 GPU 시스템 프로세서를 뜻하며 일부 GPU에서 GPU 초기화 및 관리 작업을 오프로드하는 데 사용합니다. GSP는 펌웨어에 의해 구동됩니다. 현재 일부 제품에서 기본적으로 GSP를 사용하는데, 향후 더 많은 제품에서도 최신 드라이버 릴리즈를 통해 이를 활용될 것이라고 합니다.
Graph Node API
11.6 릴리즈에는 CUDA 런타임 응용 프로그래밍 인터페이스의 Graph 관리와 관련된 새로운 API인 cudaGraphNodeSetEnabled가 포함되었습니다. 이 API를 이용하면 인스턴스화된 Graph에서 노드를 비활성화 할 수 있습니다. 한편 NULL 커널 그래프 노드 실행을 비활성화하는 기능도 추가되었습니다.
128비트 정수 지원
11.6 릴리즈에는 (__int128) 타입의 128비트 정수 지원이 포함되었습니다. 이 기능을 사용하려면 호스트 측 컴파일러에서 __int128 형식을 지원해야 합니다.
Cooperative 그룹 네임스페이스
이름 지정, 기능 범위, 단위 차원 및 크기의 일관성을 개선하기 위해 새로운 기능 업데이트가 Cooperative 그룹 네임스페이스에 있었습니다.

CUDA 컴파일러
-arch=native 컴파일 옵션이 새로 추가되었습니다. 이는 기존 -gencode=arch=compute_xx,code=sm_xx를 확장한 것이라 보면 됩니다. 이외에 nvlink를 통해 PTX 파일을 만드는 기능도 생겼습니다.
이상으로 간단히 11.6 릴리즈의 주요 개선 사항을 알아보았습니다. 더 자세한 내용은 3월 21일-24일에 열리는 NVIDIA GTC 2022 세션을 통해 들을 수 있다고 합니다. 참고로 GTC 2022 무료 등록은 이 링크를 통해 할 수 있습니다.
CUDA New Features and Beyond, by Stephen Jones
Nearly Effortless CUDA Graphs, by Rob Van der Wijngaart and Jiajie Yao
A Deep Dive Into the Latest HPC Software, by Tim Costa
Multi-GPU Programming Models, by Jiri Kraus
#NVIDIA #CUDA #Ampere_GPU #GTC2022