tt-metal

tt-metal

:metal: TT-NN operator library, and TT-Metalium low level kernel programming model.

Stars: 587

Visit
 screenshot

TT-NN is a python & C++ Neural Network OP library. It provides a low-level programming model, TT-Metalium, enabling kernel development for Tenstorrent hardware.

README:

Buy hardware | Install | Discord | Join Us

ttnn logo

TT-NN is a Python & C++ Neural Network OP library.

API Reference | Model Demos


LLMs

Model Batch Hardware ttft (ms) t/s/u Target
t/s/u
t/s TT-Metalium Release vLLM Tenstorrent Repo Release
Falcon 7B (decode only) 32 e150 4.2 4.4 134.4
Falcon 7B 32 n150 71 18.0 26 576.0 v0.54.0-rc3
Mistral 7B 32 n150 9.9 25 316.8 v0.51.0-rc28
Mamba 2.8B 32 n150 48 12.3 41 393.6 v0.51.0-rc26
Llama 3.1 8B 32 n150 169 23.4 23 748.8 v0.54.0-rc20 2f33504
Llama 3.2 1B 32 n150 68 58.6 160 1875.2 v0.54.0-rc20 2f33504
Llama 3.2 3B 32 n150 110 36.1 60 1155.2 v0.54.0-rc20 2f33504
Llama 3.2 11B Vision (TP=2) 16 n300 2880 14.8 17 236.8 v0.54.0-rc20 2f33504
Falcon 7B (DP=8) 256 QuietBox 96 14.7 26 3763.2 v0.54.0-rc3
Llama 3.1 70B (TP=8) 32 QuietBox 190 15.1 20 483.2 v0.54.0-rc2 9531611
Falcon 40B (TP=8) 32 QuietBox 5.3 36 169.6 v0.53.1-rc23
Mixtral 8x7B (TP=8) 32 QuietBox 230 14.6 33 467.2 v0.53.0-rc44
Falcon 7B (DP=32) 1024 Galaxy 242 4.4 26 4505.6 v0.53.0-rc33
Llama 3.1 70B (DP=4, TP=8) 128 Galaxy 190 14.3 20 1835.5 v0.52.0-rc31
Llama 3.1 70B (TP=32) 32 Galaxy 763 13.5 80 432.0 v0.54.0-rc20 2f33504

Last Update: January 13, 2025

Notes:

  • ttft = time to first token | t/s/u = tokens/second/user | t/s = tokens/second; where t/s = t/s/u * batch.
  • TP = Tensor Parallel, DP = Data Parallel; Defines parallelization factors across multiple devices.
  • The reported LLM performance is for an input sequence length (number of rows filled in the KV cache) of 128 for all models except Mamba (which can accept any sequence length).
  • The t/s/u reported is the throughput of the first token generated after prefill, i.e. 1 / inter token latency.

CNNs

Model Batch Hardware fps Target fps Release
ResNet-50 (224x224) 20 e150 5,100 10,000
ResNet-50 (224x224) 16 n150 4,670 7,000
ResNet-50 (224x224) (DP=2) 32 n300 8,200 14,000
ResNet-50 (224x224) (DP=8) 128 QuietBox 32,250 56,000
ResNet-50 (224x224) (DP=32) 512 Galaxy 95,900 224,000
ResNet-50 (224x224) (DP=64) 1024 Two Galaxies 145,000 448,000
ViT (224x224) 9 e150 1,360 2,000
ViT (224x224) 8 n150 912 1,600
Stable Diffusion 1.4 (512x512) 1 n150 0.167 0.3
YOLOv4 (320x320) 1 n150 95 300
SegFormer Semantic Segmentation (512x512) 1 n150 90 300

NLPs

Model Batch Hardware sen/sec Target sen/sec Release
BERT-Large 12 e150 370 410
BERT-Large 8 n150 270 400
T5 small e150 140
Bloom e150 70

Model Updates

For the latest model updates and features, please see MODEL_UPDATES.md

TT-NN Tech Reports

Benchmarks


TT-Metalium logo

TT-Metalium is our low-level programming model, enabling kernel development for Tenstorrent hardware.

Programming Guide | API Reference

Getting started

Get started with simple kernels.

TT-Metalium Tech Reports

TT-Metalium Programming Examples

Hello World

Add Integers

Simple Tensor Manipulation

DRAM Data Movement

Eltwise

Matmul

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for tt-metal

Similar Open Source Tools

For similar tasks

For similar jobs