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 应用程序无缝集成。它提供 C++ SDK 和 Python 模块用于管理 GPU 资源。框架使用 Manager 来协调设备组件,使用 Tensor 表示结构化数据,并通过基于 shader 的 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.