tenstorrent/tt-metal
:metal: TT-NN operator library, and TT-Metalium low level kernel programming model.
What is tt‑metal?
tt‑metal(別名 TT‑Metalium)は、Tenstorrent のカスタム AI アクセラレータ(Wormhole と Blackhole チップ)上でニューラルネットワークカーネルを記述・実行できるオープンソースソフトウェアスタックです。2 つの層を提供します。
- TT‑Metalium – ハードウェア上で直接動作するカーネルを構築するための低レベル C++/Python プログラミングモデル。プログラミングガイド、メモリレイアウト、データフォーマット、マトリックスエンジンに関する技術レポート、デバッグ・プロファイリングツールが含まれます。
- TT‑NN – TT‑Metalium の上に構築された高レベル Python ライブラリで、共通のニューラルネットワーク操作(行列乗算、畳み込み、アテンション等)を実装し、フルモデルの実行を容易にします。
リポジトリには以下が同梱されています。
- サンプルカーネル(hello‑world、整数加算、行列乗算、要素ごとの演算、DRAM 移動)。
- モデルデモのコレクション(Llama 3.3 70B、Qwen 2.5 7B/72B、Whisper、Mixtral 8x7B)で、Tenstorrent ハードウェア上の推論性能を示します。
- パフォーマンス最適化、メモリアロケータ、テンソルレイアウト、フラッシュアテンション、マルチチップスケーリングを文書化した技術レポート。
- ビジュアライザ、低レベルデバッガ(TT‑Exalens)、システム管理 CLI(TT‑SMI)、プロファイリングユーティリティ(Tracy、Watcher、Inspector)などのツール。
Who is it for?
- ハードウェアエンジニア:Tenstorrent デバイス向けにカスタムカーネルを作成する必要がある方。
- ML 研究者/エンジニア:Tenstorrent アクセラレータ上で大規模言語モデルやビジョンモデルを高スループットで実行したい方。
- ツール開発者:このハードウェア向けのデバッグ、プロファイリング、デプロイパイプラインを構築する方。
How to get started
INSTALLING.mdガイドに従ってスタックをインストールします(事前ビルドされた many‑linux ホイールが提供されています)。- シンプルな “hello‑world” または “add integers” のサンプルを実行し、カーネル実行を確認します。
models/demos/以下のモデルデモを探索し、エンドツーエンド推論を確認します(例:32 デバイスの Galaxy メッシュ上で Llama 3.3 70B を実行)。- プログラミングガイドと技術レポートを読み込み、より高度なパフォーマンスチューニングに取り組みます。
Why it matters
Tenstorrent のチップは高スループットのテンソル演算向けに設計されており、独自のアーキテクチャ(マトリックスエンジン、SFPU、イーサネットベースのメッシュ)を持ちます。tt‑metal はハードウェアの詳細を抽象化しつつ、エキスパートカーネル開発者に十分な制御権を提供し、コミュニティがこの新興 AI アクセラレータ上で LLM とビジョンモデルの性能限界を押し上げることを可能にします。
上記のすべての詳細は、リポジトリの README とリンクされたドキュメントから直接引用しています。