NVIDIA/TileGym

Helpful kernel tutorials, examples and SKILLs for tile-based GPU programming

何を解決するか

TileGymは、タイルベースのプログラミングを使用して、効率的なGPUカーネルの学習と実装を支援するために設計されたライブラリです。理論的なGPU最適化と実用的なアプリケーションの間のギャップを埋めるため、CUDA Tileの実験場を提供し、これらの最適化されたカーネルを実際のLLM(大規模言語モデル)に統合できるようにします。

仕組み

TileGymは、cuTile (Python)、CUDA Tile C++、Triton CUDA Tile IR、および実験的なRustベースのバックエンド (cuTile-rs) を含む、複数のバックエンドにわたる一般的なディープラーニング・オペレーター用の事前実装済みカーネルのコレクションを提供します。ユーザーは実行時にバックエンドを切り替えて、パフォーマンスと効率を比較することができます。このライブラリには、パフォーマンスのベンチマークツールと、Llama 3.1やDeepSeek V2のようなモデルのエンドツーエンドの統合例が含まれています。

対象者

GPUカーネル開発者、AI研究者、および、LLMの実装を最適化したい、あるいはNVIDIA BlackwellおよびAmpereアーキテクチャにおけるタイルベースのGPUプログラミングの詳細を学びたいエンジニアを対象としています。

ハイライト

  • マルチバックエンド対応: カーネル実装のためにcuTile、C++、Triton、およびRustをサポートしています。
  • LLM統合: Llama 3.1およびDeepSeek V2を加速させる実用的な例を提供します。
  • パフォーマンス・ツール: カーネルの効率を評価するためのマイクロベンチマークが含まれています。
  • ハードウェア最適化: NVIDIA BlackwellおよびAmpere GPU向けに特別に検証されています。

関連

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