Tenstorrent tt-metalを読む: TT-NNからカーネル、実機検証まで
TT-NN オペレーター ライブラリ、および TT-Metalium 低レベル カーネル プログラミング モデル。
ひと目でわかる
- これは何?
- Tenstorrent/tt-metalのTT-NN、TT-Metalium、モデルデモ、診断ツールをREADMEの数値と開発導線から評価する。
- 誰に向いている?
- Tenstorrentハードウェアを使い、モデル演算子と低水準カーネルの両方を調べたいチームに向きます。vLLMの数字をそのまま移植せず、READMEのモデルデモを固定した上で、対象デバイス、TT-Metaliumの版、TTFT、T/S/Uを再計測してから採用範囲を決めてください。
- 商用利用できる?
- できます。Apache-2.0 は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- されています。最後のコミットは 1 日前です。
- 何の言語で書かれている?
- 主に C++ です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
TT-NNとTT-Metaliumを分けて読む
tt-metalリポジトリは、Tenstorrentのソフトウェアスタックのうち、異なるが関連する2つの部分をホストしています。TT-NNは、モデルを構築するための高水準の操作を提供するPythonおよびC++ニューラルネットワーク演算子ライブラリです。TT-Metaliumは、Tenstorrentハードウェア向けの低水準プログラミングモデルで、カスタムカーネルを書きたい開発者を対象としています。READMEはこれらを別々のプロジェクトとして提示し、それぞれにAPIリファレンスとドキュメントがあります。TT-NNはAPIリファレンスとモデルデモにリンクし、TT-Metaliumはプログラミングガイドとカーネル例を指しています。GitHubのリポジトリ説明では「TT-NN演算子ライブラリ、およびTT-Metalium低水準カーネルプログラミングモデル」と呼ばれており、これはREADMEの構造と一致しています。
models/README.mdのModel Matrixとmodels/demosを同じリリースで照合し、TTFTとT/S/Uの測定条件を記録する。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalのTT-NNとTT-Metaliumを分けて読むについては、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
モデル表のTTFTとT/S/Uをどう解釈するか
TT-NNはPythonおよびC++ニューラルネットワーク演算子ライブラリとして紹介されています。READMEにはAPIリファレンスリンクとmodels/demosフォルダがあります。また、注目のモデルのセットがリストされており、それぞれに性能表があります:Llama 3.3 70B、Qwen 2.5 7Bおよび72B、Whisper(distil-large-v3)、Mixtral 8x7B。表には、最初のトークンまでの時間(TTFT、ミリ秒)、ユーザーあたり毎秒トークン数(T/S/U)、合計毎秒トークン数(T/S)、並列化係数(TPおよびDP)が報告されています。READMEはこれらの指標を定義し、データはtt-metalモデルデモからのものであり、vLLM推論サーバーなどの他のランタイムでは異なる結果になる可能性があると警告しています。また、Blackholeソフトウェアの最適化は活発に開発中であり、参加を呼びかけています。
METALIUM_GUIDE.mdとsimple kernelsの例を読み、対象デバイスでコンパイルできるか確認する。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalのモデル表のTTFTとT/S/Uをどう解釈するかについては、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
TT-Metaliumのカーネル例が示す開発範囲
TT-Metaliumは、Tenstorrentハードウェア向けのカーネル開発を可能にする低水準プログラミングモデルとして説明されています。READMEはプログラミングガイドとAPIリファレンスを指し、単純なカーネルから始めることを提案しています。プログラミング例のリストには、hello world計算およびデータ移動カーネル、Baby RISC-Vコアまたは計算カーネルでの整数加算、単純なテンソル操作(シャーディング、パディング)、DRAMループバック、要素単位の単項および二項演算、シングルコアおよびマルチコアのmatmul例が含まれています。各例には独自のmarkdownファイルがあります。TT-Metaliumには、マトリックスエンジン、データ形式、アロケータ、テンソルレイアウト、フラッシュアテンション、イーサネットマルチチップ、Blackholeブリングアップガイドなどの技術レポートもあります。これらはリポジトリ内のリンクです。
tech_reportsの更新日、TT-SMIのデバイス情報、Watcherのログを分けて保存する。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalのTT-Metaliumのカーネル例が示す開発範囲については、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
技術レポートから見るメッシュ設計
リポジトリには、コードとともに維持され日付が付けられた多数のマークダウン形式の技術レポートがあります。TT-NNには、高度な性能最適化、ViT実装、LLMブリングアップ、CNN最適化に関するレポートがあります。TT-Metaliumのレポートは、マトリックスエンジン、データ形式、データ形式の再構成、特殊浮動小数点数の処理、アロケータ、テンソルレイアウト、DRAM帯域幅の飽和、フラッシュアテンション、CNN、イーサネットおよびマルチチップの基礎、Blackholeブリングアップ、サブデバイスをカバーしています。別のスケールアウト技術レポートは、デバイスのメッシュプログラミング、CCL性能チューニング、複数メッシュのプログラミング、TT-Fabricアーキテクチャ、TT-Distributedアーキテクチャをカバーしています。READMEはこれらすべてへのリンクを提供し、それぞれに更新日が含まれています。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalの技術レポートから見るメッシュ設計については、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
Visualizer、Watcher、TT-SMIの役割
どちらのレベルで作業する開発者にも、READMEはいくつかの補助ツールをリストしています。TT-NN Visualizerは、モデル実行のインタラクティブなグラフとメモリプロットを提供し、マルチインスタンスサポートとファイルまたはSSHベースのレポートロードを備えています。TT-Exalens(独自のリポジトリで文書化)は、WormholeおよびBlackholeデバイスにアクセスできる低水準デバッグツールです。TT-SMIはTenstorrentシステム管理インターフェースで、デバイス、テレメトリ、ファームウェア情報のためのコマンドラインユーティリティです。Model Explorerはモデルグラフの階層ビューを提供します。Tracy Profilerはリアルタイムのナノ秒解像度プロファイラで、CPU、GPU、メモリ、ロックをサポートしています。カーネルデバッグについては、READMEはカーネルから変数、アドレス、循環バッファデータを出力するDPRINTと、ファームウェアとカーネルを監視して一般的なプログラミングエラーやハングを検出するWatcherに言及しています。Inspectorは調査のためのホストランタイムデータを記録します。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalのVisualizer、Watcher、TT-SMIの役割については、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
リリース表とApache 2.0の境界
READMEには、0.56.0から0.68.0までのバージョン(後者は2026年4月30日のETA付き)をリストしたリリース表があり、各リリース日と、最近のリリースではファームウェア、KMD、SMIバージョンが含まれています。一部のリリースはスキップとマークされています。表の後には、詳細についてはreleasesフォルダを参照するという注意があります。ライセンスセクションでは、TT-MetaliumとTTNNはApache 2.0ライセンスの下でライセンスされており、ライセンスファイルと説明テキストへのリンクがあります。ライセンス抜粋は、再配布の条件付きで、永続的、世界的、非独占的、ロイヤルティフリーの著作権および特許ライセンスを付与します。READMEはまた、manylinux準拠のホイールなどの配布可能な形式では、libnuma、libhwloc、openmpi、libeventなどの追加ライブラリをバンドルする必要があるかもしれず、それぞれに独自のライセンス条項があると述べています。READMEはソフトウェアのサポート、保証、セキュリティ保証に関する情報を提供していません。
tt-metalでは、章の主題に対応する入力、出力、エラー、保存状態を別々に記録します。READMEに記載がない既定値は推測せず、対象版の実行結果と公式資料の差分として扱います。確認対象は章ごとに変え、同じ結論を別の表現で繰り返さないようにします。tt-metalのリリース表とApache 2.0の境界については、成功したという印象だけを残さず、使用した版、入力の形、実行時間、返された内容、失敗時のメッセージを同じ記録にまとめます。これにより、READMEの機能説明と手元の環境で再現した挙動を分けて読めます。
編集部の結論
Tenstorrentハードウェアを使い、モデル演算子と低水準カーネルの両方を調べたいチームに向きます。vLLMの数字をそのまま移植せず、READMEのモデルデモを固定した上で、対象デバイス、TT-Metaliumの版、TTFT、T/S/Uを再計測してから採用範囲を決めてください。
コミュニティノート