Dao-AILab/quack

A Quirky Assortment of CuTe Kernels

何を解決するか

QuACK は、一般的なディープラーニング演算向けの高性能GPUカーネルのコレクションを提供し、CuTe-DSL を使用して Python から直接 "光の速度" のパフォーマンスを実現できるようにします。

動作方法

このプロジェクトは、NVIDIA GPU向けのドメイン固有言語である CuTe-DSL を使って、さまざまな数学的演算(カーネル)を実装しています。H100、B200/B300、RTX 50 グラフィックスカードなど、最新のNVIDIAハードウェアをサポートしており、JAX 用のオプションバインディングも提供しています。

対象ユーザー

高スペックのNVIDIA GPUを扱う研究者やエンジニア向けに設計されており、正規化や行列乗算(GEMM)などの演算に最適化されたGPUカーネルが必要な場合に最適です。低レベルのCUDA C++を書く必要はありません。

主な特徴

  • RMSNorm、Softmax、Cross Entropy、LayerNorm(前方および後方パス)向けの最適化カーネル。
  • HopperおよびBlackwellアーキテクチャ向けの特別なGEMMおよびエピローグ実装。
  • JAXとの統合(オプションバインディングで利用可能)。
  • 最新のCUDAツールキット(12.9+)およびPython 3.12をサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト