cuda.bindings — CUDA C API의 저수준 파이썬 바인딩

cuda.bindings — CUDA C API의 저수준 파이썬 바인딩

CUDA C API를 파이썬에서 그대로, 낮은 수준으로 호출하고 싶다면 cuda.bindings 를 써요. cuda.core 가 추상화한 부분을 풀고 싶을 때, 다시 말해 세밀한 제어가 필요할 때 유용해요.

출처: https://nvidia.github.io/cuda-python/cuda-bindings/latest/

cuda.bindings 는 CUDA의 여러 하위 API를 파이썬 모듈로 노출해요:

  • driver / runtime — CUDA 런타임 API 뿐 아니라 드라이버 레벨 호출까지.
  • nvrtc / nvjitlink / nvvm — 런타임 컴파일(RTC)과 JIT 링크, NVVM IR 처리.
  • nvfatbin — fatbin(임베디드 CUDA 코드) 생성·처리.
  • cudla / cufile / nvml — DLA, 파일 I/O, GPU 관리(NVML) 관점의 바인딩.
  • utils — 커널 인자 준비 같은 보조 유틸리티.

성능과 제어가 핵심이라, 커널 인자를 어떻게 준비하고 전달할지에 대한 워크플로 설명이 따로 있어요. 저수준 C 객체의 주소를 얻는 법, CUDA 객체의 수명(lifetime) 관리, 확장 타입의 속성 읽기·쓰기 같은 팁 섹션도 제공해요.

설치는 PyPI와 conda-forge 모두 지원해요. 런타임 요구사항부터 개발 환경 세팅까지 문서에 정리돼 있고, 버전별 릴리스 노트(11.4~13.4)로 업그레이드 내용을 추적할 수 있어요.

참고: cuda.bindings 는 저수준 바인딩이라 기본적으로 C API의 시맨틱을 따르고, 그 위에 cuda.core 가 파이썬다운 래퍼를 얹는 구조예요.

더 알아보기