Repolode
NVIDIA

NVIDIA/raft

NVIDIA GPU에서 머신러닝, 선형대수, 정보 검색을 위한 재사용 가능한 프리미티브를 제공하는 CUDA 가속 C++ 헤더 전용 라이브러리 및 Python 래퍼입니다.

스타
1,052
포크
256
열린 이슈
446
마지막 커밋
어제

어떤 프로젝트인가요?

RAFT는 머신러닝과 정보 검색을 위한 기본 알고리즘과 프리미티브를 제공하는 라이브러리로, 고성능 GPU 애플리케이션의 구성 요소로 활용할 수 있는 CUDA 가속 구현을 갖추고 있습니다. 밀집 및 희소 선형대수, 솔버, 통계와 샘플링, 거리 계산, 데이터 형식 변환을 지원하며, 여러 노드와 GPU 간 통신 인프라도 포함합니다.

RAFT는 C++ 헤더 전용 템플릿 라이브러리이며, 자주 사용하는 템플릿 유형의 컴파일 시간을 줄이고 CUDA 컴파일러 없이 호출할 수 있는 호스트 런타임 API를 제공하는 선택적 공유 라이브러리도 지원합니다. 메모리는 CCCL 또는 NVIDIA RMM 리소스로 관리하며, 입력에는 mdspan 뷰와 이를 소유하는 mdarray 계층을 사용합니다. Python 사용자는 런타임 API를 래핑하고 __cuda_array_interface__를 지원하는 모든 객체를 받는 pylibraft 패키지와, Dask 클러스터에서 분산 GPU 알고리즘을 실행하는 raft-dask를 사용할 수 있습니다.

RAFT는 탐색적 분석을 수행하는 데이터 과학자보다 라이브러리와 애플리케이션을 개발하는 개발자를 대상으로 합니다. 패키지는 Conda로 배포되며, 실험적인 형태로 CUDA 12 및 13용 pip 패키지도 제공됩니다.

핵심 기능

  • 01컴파일 시간을 줄여 주는 선택적 공유 라이브러리를 지원하는 C++ 헤더 전용 템플릿 라이브러리입니다.
  • 02CUDA 컴파일러 없이 호출할 수 있는 호스트 런타임 API를 제공합니다.
  • 03밀집 및 희소 선형대수, 솔버, 통계 프리미티브를 제공합니다.
  • 04pylibraft를 통한 Python 래퍼로 CuPy, PyTorch, Numba, cuDF와 연동합니다.
  • 05Dask 클러스터에서 raft-dask를 통해 여러 노드와 GPU 간 통신을 지원합니다.

활용 사례

  • 더 큰 시스템 안에 GPU 가속 벡터 검색 또는 최근접 이웃 구성 요소를 구축합니다.
  • 검증된 선형대수 및 리덕션 프리미티브를 재사용해 커스텀 CUDA 알고리즘을 작성합니다.
  • Dask를 사용해 여러 노드에서 분산 GPU 알고리즘을 실행합니다.
  • CUDA 코드를 작성하지 않고 Python에서 GPU 프리미티브를 호출합니다.

빠른 시작

  1. 1

    conda로 RAFT 설치(CUDA 13)

    mamba install -c rapidsai -c conda-forge raft-dask pylibraft cuda-version=13.3
  2. 2

    또는 pip로 pylibraft 설치(CUDA 12)

    pip install pylibraft-cu12

사용 전 알아둘 점

  • CUDA를 지원하는 NVIDIA GPU가 필요하며, CPU만 있는 머신에서는 사용할 수 없습니다.
  • 데이터 과학에서 직접 사용하기보다는 저수준 프리미티브를 위한 용도입니다.
  • pip 패키지는 실험 단계이며 C++ 헤더가 포함되어 있지 않습니다.

포함된 컬렉션

토픽

자주 묻는 질문

raft은(는) 무엇인가요?
NVIDIA GPU에서 머신러닝, 선형대수, 정보 검색을 위한 재사용 가능한 프리미티브를 제공하는 CUDA 가속 C++ 헤더 전용 라이브러리 및 Python 래퍼입니다. RAFT는 머신러닝과 정보 검색을 위한 기본 알고리즘과 프리미티브를 제공하는 라이브러리로, 고성능 GPU 애플리케이션의 구성 요소로 활용할 수 있는 CUDA 가속 구현을 갖추고 있습니다. 밀집 및 희소 선형대수, 솔버, 통계와 샘플링, 거리 계산, 데이터 형식 변환을 지원하며, 여러 노드와 GPU 간 통신 인프라도 포함합니다.
raft은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
raft은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
raft은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. raft의 마지막 커밋은 2026년 11월 6일입니다.
raft은(는) 어디에 사용할 수 있나요?
더 큰 시스템 안에 GPU 가속 벡터 검색 또는 최근접 이웃 구성 요소를 구축합니다. 검증된 선형대수 및 리덕션 프리미티브를 재사용해 커스텀 CUDA 알고리즘을 작성합니다. Dask를 사용해 여러 노드에서 분산 GPU 알고리즘을 실행합니다. CUDA 코드를 작성하지 않고 Python에서 GPU 프리미티브를 호출합니다.
raft는 어떻게 설치하나요?
conda로 RAFT 설치(CUDA 13): mamba install -c rapidsai -c conda-forge raft-dask pylibraft cuda-version=13.3 또는 pip로 pylibraft 설치(CUDA 12): pip install pylibraft-cu12
raft은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/NVIDIA/raft

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트