JuliaGPU/GPUArrays.jl
Reusable array functionality for Julia's various GPU backends.
해결하는 문제
Julia에서 새로운 GPU 배열 유형을 개발하는 개발자들을 위한 표준화된 도구와 인터페이스 세트를 제공합니다. 새로운 하드웨어 백엔드마다 GPU 배열 기능을 처음부터 구축하는 대신, 이 패키지를 사용하여 구현 과정을 가속화하고 Julia 생태계 전체와의 호환성을 보장할 수 있습니다.
작동 방식
Julia의 AbstractArray 인터페이스에 대한 GPU 전용 대응물입니다. 백엔드 개발자가 밀집 배열과 희소 배열을 지원하기 위해 구현해야 하는 인터페이스 메서드(예: dense_array_type, sparse_array_type)를 정의합니다. 또한 CSC, CSR, COO, BSR 등의 다양한 희소 형식을 위한 디바이스 측 배열 유형을 제공하며, 백엔드에 관계없이 브로드캐스트 및 mapreduce 기능을 GPU 희소 배열에서 사용할 수 있도록 하는 추상화 래퍼를 제공합니다.
대상 사용자
이 패키지는 CUDA.jl, oneAPI.jl, AMDGPU.jl, Metal.jl 등의 GPU 백엔드를 개발하는 개발자들을 위한 것으로, 최종 사용자를 위한 것이 아닙니다.
주요 기능
- 백엔드 독립적 래퍼: GPU 희소 배열에 대한 브로드캐스트와
mapreduce기능을 즉시 지원합니다. - 희소 배열 지원: CSC, CSR, COO, BSR 행렬 및 희소 벡터를 위한 디바이스 측 유형을 포함합니다.
- 인터페이스 표준화: 호스트 측 및 디바이스 측 배열 변환을 구현하기 위한 명확한 메서드 세트를 정의합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트