rapidsai/cugraph

cuGraph - RAPIDS Graph Analytics Library

해결하는 문제

cuGraph는 그래프 분석의 계산적 병목을 처리하도록 설계되었습니다. GPU 가속 기능을 활용하여, 기존 CPU에서는 너무 느리거나 자원을 과도하게 소모하여 실행이 어려운 대규모 데이터셋에서도 그래프를 생성하고 조작하며, 확장 가능한 빠른 그래프 알고리즘을 실행할 수 있습니다.

작동 방식

이 라이브러리는 사용 편의성과 제어력을 균형 있게 제공하기 위해 계층적인 API 접근 방식을 제공합니다:

  • 고수준 Python API: GPU DataFrames (cuDF)와 원활하게 통합되어, ETL 작업과 기계학습 작업 (cuML) 사이에서 GPU 내에서 데이터를 이동할 수 있도록 합니다. 최소한의 이식 작업으로 가능한 Pandas 유사 및 NetworkX 유사 인터페이스를 제공합니다.
  • pylibcugraph: 더 밀접한 통합과 더 적은 종속성을 필요로 하는 애플리케이션을 위한 전용 Python API입니다.
  • libcugraph / libcugraph_c: 그래프 구조에 대한 직접적인 제어 및 Python 외부의 통합이 필요한 사용자를 위한 저수준 C/C++/CUDA 인터페이스입니다.

Pandas DataFrames 및 NetworkX Graph 객체와 같은 다양한 입력 형식을 지원하며, GPU에서 Apache Arrow의 열 기반 데이터 형식을 사용하여 효율적인 데이터 교환을 보장합니다.

대상 사용자

  • 데이터 과학자: Python, Pandas, NetworkX에 익숙하고 그래프 분석 워크플로를 GPU 가속화하고 싶은 사용자.
  • C/C++/CUDA 개발자: 저수준 그래프 이론 구현이 필요한 고성능 애플리케이션을 개발하는 엔지니어.
  • AI/ML 엔지니어: 인공지능 워크로드를 위한 엔드투엔드 GPU 가속 데이터 사이언스 파이프라인을 구축하는 전문가.

주요 특징

  • GPU 가속 알고리즘: PageRank와 같은 그래프 알고리즘을 확장 가능하고 빠르게 실행.
  • RAPIDS 생태계 통합: cuDF (ETL)와 cuML (ML) 간의 원활한 데이터 전달.
  • 유연한 API: 고수준 Python에서 저수준 CUDA C++까지 다양한 진입점 제공.
  • 광범위한 호환성: Pandas, NetworkX, Apache Arrow에서 데이터를 지원.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트