KomputeProject/kompute
General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
What it solves
Kompute는 일반 목적 GPU 컴퓨트 프레임워크로, AMD, Qualcomm, NVIDIA 등 다양한 그래픽 카드에 대한 크로스 벤더 호환성을 제공하도록 설계되었습니다. GPU 가속 애플리케이션 작성 과정을 단순화하며, 특히 머신러닝 및 데이터 처리 분야에서 단일 벤더의 독점 생태계에 얽매이지 않고 사용할 수 있습니다.
How it works
Kompute는 Vulkan API 위에 구축되었으며, "Bring‑your‑own‑Vulkan" 설계를 사용해 기존 Vulkan 애플리케이션과 원활히 통합됩니다. GPU 리소스 관리를 위한 C++ SDK와 Python 모듈을 제공합니다. 프레임워크는 Manager를 통해 디바이스 컴포넌트를 조정하고, Tensor를 사용해 구조화된 데이터를 다루며, 셰이더 기반 Algorithm으로 GPU에서 로직을 실행합니다. GPU 패밀리 큐를 활용한 비동기·병렬 처리를 지원하고, 호스트와 GPU 메모리 모두에 대한 명시적 메모리 관리를 제공합니다.
Who it’s for
다양한 하드웨어 벤더에서 고성능 GPU 가속이 필요한 개발자를 위한 것입니다. 머신러닝 모델을 구축하는 연구자, Android NDK를 이용한 모바일 애플리케이션 개발자, Godot Engine 등을 사용하는 게임 개발자에게 적합합니다.
Highlights
- Cross-Vendor Support: Works across AMD, NVIDIA, and Qualcomm GPUs.
- Mobile Enabled: Optimized for mobile environments with Android NDK support.
- Flexible Interfaces: Offers both a low-level C++ SDK for optimization and a high-level Python package for rapid experimentation.
- Asynchronous Execution: Supports parallel operations across multiple GPU queues.
- Industry Backing: Hosted project by the LF AI & Data Foundation.