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 是一個開源的 AI 編譯器堆疊,旨在讓在 Tenstorrent 硬體上執行 AI 工作負載(包含推論與訓練)變得輕鬆簡單。它彌補了 PyTorch、JAX、ONNX 等高階機器學習框架與底層 Tenstorrent 硬體之間的差距,確保只要模型能放入記憶體,就能執行。
工作原理
TT-Forge 作為一個基於 TT-Metalium 的多層堆疊運作。它使用多種前端從不同框架中導入模型:
- TT-XLA:PyTorch 與 JAX 的主要前端,將模型編譯為 StableHLO 圖。
- TT-Forge-ONNX:基於 TVM 的前端,支援 ONNX、TensorFlow 與 PaddlePaddle。
- TT-MLIR:核心 MLIR 基礎編譯器,對圖進行優化(融合、分片、佈局),並降低至 TT-Metalium。
- TT-Lang:一種 Python DSL,允許開發者以 Python 而非 C++ 寫出高效率的自訂內核。
- TT-Blacksmith:為各種模型類型提供優化訓練配方與實驗。
適用對象
本專案適用於希望在 Tenstorrent 硬體上部署或訓練模型的 AI 研究人員與開發者,以及需要高效率自訂運算的內核開發者。
主要亮點
- 廣泛的框架支援:支援 PyTorch、JAX、ONNX、TensorFlow 與 PaddlePaddle。
- 豐富的模型庫:CI 中測試超過 800 種模型變體,包含 Llama 3、Stable Diffusion XL 與 YOLOv12。
- 單晶片與多晶片支援:可跨多個晶片(N300+)執行大型模型(如 Llama 3 70B)。
- 基於 Python 的內核開發:TT-Lang 支援以 Python 寫出融合運算,並內建模擬與效能分析功能。
相關
- 專案
- 專案
- 專案
- 專案
- 專案