tenstorrent/tt-forge

Tenstorrent's MLIR Based Compiler. We aim to enable developers to run AI on all configurations of Tenstorrent hardware, through an open-source, general, and performant compiler.

何を解決するか

TT-Forge は、Tenstorrent ハードウェア上で AI ワークロード(推論および学習を含む)を簡単に実行できるように設計されたオープンソースの AI コンパイラスタックです。PyTorch、JAX、ONNX などの高レベル ML フレームワークと、下位の Tenstorrent ハードウェアの間のギャップを埋め、モデルがメモリに収まる限り実行可能であることを保証します。

動作方法

TT-Forge は TT-Metalium を基盤とする多層構造のスタックとして動作します。さまざまなフロントエンドを使用して、異なるフレームワークからのモデルを読み込みます:

  • TT-XLA:PyTorch および JAX の主要なフロントエンドで、モデルを StableHLO グラフにコンパイルします。
  • TT-Forge-ONNX:TVM をベースとした ONNX、TensorFlow、PaddlePaddle 用のフロントエンド。
  • TT-MLIR:コアの MLIR ベースコンパイラで、グラフの最適化(結合、シャーディング、レイアウト)を行い、TT-Metalium に低レベル化します。
  • TT-Lang:開発者が C++ ではなく Python でカスタムの高性能カーネルを書けるようにする Python DSL。
  • TT-Blacksmith:さまざまなモデルタイプ向けの最適化された学習レシピと実験を提供します。

対象ユーザー

Tenstorrent ハードウェア上でモデルをデプロイまたは学習したい AI 研究者や開発者、また高性能なカスタム演算が必要なカーネル開発者向けです。

主な特徴

  • 広範なフレームワーク対応:PyTorch、JAX、ONNX、TensorFlow、PaddlePaddle をサポート。
  • 豊富なモデルライブラリ:CI でテストされた 800 種類以上のモデルバリアントを備え、Llama 3、Stable Diffusion XL、YOLOv12 などを含む。
  • シングルおよびマルチチップ対応:Llama 3 70B などの大規模モデルを複数チップ(N300+)で実行可能。
  • Python ベースのカーネル開発:TT-Lang を使用すると、Python で結合演算を記述でき、組み込みのシミュレーションとプロファイリングが可能。

関連

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