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.