No description
  • C++ 50.5%
  • Python 44.8%
  • C 3.2%
  • Shell 0.6%
  • CMake 0.5%
  • Other 0.3%
Find a file
Oleksandr Bacherikov c01887f34a
Some checks failed
runner-failure-report.yaml / [Cleanup] Adding `UnitMeshFixture` to modernize single-device tests (#52222) (push) Failing after 0s
Merge Gate / static-checks (push) Has been cancelled
Merge Gate / docker-images (push) Has been cancelled
Merge Gate / check-harbor (push) Has been cancelled
Merge Gate / find-changes (push) Has been cancelled
Merge Gate / build (push) Has been cancelled
Merge Gate / build-tsan (push) Has been cancelled
Merge Gate / build-asan (push) Has been cancelled
PR Gate / check-harbor (push) Has been cancelled
Merge Gate / build-sweeps (push) Has been cancelled
Merge Gate / resolve-docker-pull-refs (push) Has been cancelled
Merge Gate / resolve-docker-pull-refs-tsan (push) Has been cancelled
Merge Gate / resolve-docker-pull-refs-asan (push) Has been cancelled
Merge Gate / runtime-smoke-tests (push) Has been cancelled
Merge Gate / runtime-basic-tests (push) Has been cancelled
Merge Gate / triage-tests (push) Has been cancelled
Merge Gate / ttnn-smoke-tests (push) Has been cancelled
Merge Gate / ttnn-basic-tests (push) Has been cancelled
Merge Gate / ttnn-merge-gate-tests (push) Has been cancelled
Merge Gate / models-smoke-tests (push) Has been cancelled
Merge Gate / train-merge-gate-tests (push) Has been cancelled
Merge Gate / scaleout-unit-tests (push) Has been cancelled
Merge Gate / scaleout-cpu-only-unit-tests (push) Has been cancelled
Merge Gate / resolve-docker-pull-refs-llk (push) Has been cancelled
Merge Gate / Build Quasar Perf (push) Has been cancelled
Merge Gate / llk-unit-tests (push) Has been cancelled
Merge Gate / Merge Gate Status (push) Has been cancelled
Compute Public API Surface / compute_and_notify (push) Has been cancelled
PR Gate / build-docker-images (push) Has been cancelled
PR Gate / resolve-docker-pull-refs (push) Has been cancelled
PR Gate / asan-build (push) Has been cancelled
PR Gate / find-changed-files (push) Has been cancelled
PR Gate / runtime-smoke-tests (push) Has been cancelled
PR Gate / ttnn-smoke-tests (push) Has been cancelled
PR Gate / build-docs (push) Has been cancelled
PR Gate / runtime-examples (push) Has been cancelled
PR Gate / ttnn-examples (push) Has been cancelled
Sanity tests / t3000-apc-fast-tests (push) Has been cancelled
PR Gate / model-charts-sync (push) Has been cancelled
PR Gate / code-analysis (push) Has been cancelled
PR Gate / llk-label-pr (push) Has been cancelled
PR Gate / copilot-pr-labeler (push) Has been cancelled
PR Gate / llk-smoke-tests (push) Has been cancelled
PR Gate / llk-build-quasar (push) Has been cancelled
PR Gate / PR Gate Status (push) Has been cancelled
Sanity tests / check-harbor (push) Has been cancelled
Sanity tests / build-artifact (push) Has been cancelled
Sanity tests / resolve-artifacts (push) Has been cancelled
Sanity tests / resolve-docker-pull-refs (push) Has been cancelled
Sanity tests / tests-to-run (push) Has been cancelled
Sanity tests / ttnn-sanity-tests (push) Has been cancelled
Sanity tests / ops-sanity-tests (push) Has been cancelled
Sanity tests / ttsim-sanity-tests (push) Has been cancelled
Sanity tests / runtime-sim-sanity-tests (push) Has been cancelled
[Cleanup] Adding UnitMeshFixture to modernize single-device tests (#52222)
### PR Category
Cleanup, Test Only

### Summary

This PR provides a pattern for removing legacy `IDevice` and `Buffer`
usage in tests on the example of test_matmul_single_tile_output_in_l1.

Single-device tests can use new `UnitMeshFixture` and its methods to run
programs and do read/write on a unit `MeshBuffer` instead of `Buffer`.

`MeshBuffer::create` can be used to create buffers instead of
`CreateBuffer`, and there's no need for the complex device access
`devices_[0]->get_devices()[0]`.

### Notes for reviewers

### CI Status
_Auto-generated on every push. Badges update live. Click a badge to
filter runs by this branch._

-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/sanity-tests.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/sanity-tests.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/runtime-sanity-tests.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/runtime-sanity-tests.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/blackhole-sanity-tests.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/blackhole-sanity-tests.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/tt-metal-l2-nightly.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/tt-metal-l2-nightly.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/all-model-tests.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/all-model-tests.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select-t3k.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select-t3k.yaml?query=branch:obacherikov-unit-mesh-fixture)
-
[![](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select-galaxy.yaml/badge.svg?branch=obacherikov-unit-mesh-fixture)](https://github.com/tenstorrent/tt-metal/actions/workflows/pipeline-select-galaxy.yaml?query=branch:obacherikov-unit-mesh-fixture)
2026-08-05 20:15:18 +00:00
.cursor 38935: Migrate tt::stl namespace to ttsl (#48875) 2026-07-03 06:11:55 +00:00
.github [skip ci] Feature: Test owner reassignment and querying (#49945) 2026-08-05 18:40:15 +00:00
cmake build(packaging): run dpkg-shlibdeps only on tt-metalium for sanitizer builds [Performance] (#49716) 2026-07-14 05:49:02 +00:00
contributing 38935: Migrate tt::stl namespace to ttsl (#48875) 2026-07-03 06:11:55 +00:00
dockerfile [Cleanup] Collapse BH-glx torus/superpod YAMLs into test_fabric_2d_torus_stability.yaml (#50282) 2026-08-04 17:40:21 +00:00
docs [Quasar] Clean up unpack_reduce_tilizeA_B_init and use hw_startup + init (#51234) 2026-07-31 19:10:46 +00:00
infra [skip ci] produce data: fix epoch timestamps being uploaded to cicd_test (#51630) 2026-07-30 20:52:41 +00:00
model_tracer Fix model traced sweeps to get 100% pass rate (#45410) 2026-06-29 10:43:28 +00:00
models Reland "[Bug fix] Make sampling and top-k deterministic on sub-core grids." with int32 tie-break index reduce (#52177) 2026-08-05 20:06:20 +00:00
releases [skip ci] Fix spelling/typos in documentation files (#39105) 2026-03-04 16:53:40 +00:00
scripts [Cleanup] Split non-Runtime-Tensor APIs out of experimental/tensor (#50628) 2026-07-30 17:36:54 +00:00
tech_reports [Performance] New delivery architecture for the real-time profiler (#49305) 2026-07-25 22:05:15 +00:00
tests [Cleanup] Adding UnitMeshFixture to modernize single-device tests (#52222) 2026-08-05 20:15:18 +00:00
third_party Fix local cadical (#46222) 2026-07-13 21:28:54 +00:00
tools [Cleanup]DCAMP-1176: unify test scripts between k8s and bare metal slurm (#52062) 2026-08-05 11:12:15 +00:00
tt-train Preallocate vector capacity and move vectors into structured return values (#51988) 2026-08-04 18:20:18 +00:00
tt_metal [Bug fix]: Fix TC capacity to be 16bits (#52117) 2026-08-05 19:27:34 +00:00
tt_stl Preallocate vector capacity and move vectors into structured return values (#51988) 2026-08-04 18:20:18 +00:00
ttnn Reland "[Bug fix] Make sampling and top-k deterministic on sub-core grids." with int32 tie-break index reduce (#52177) 2026-08-05 20:06:20 +00:00
.clang-format Enforce 'const' left of the type, even via clang-tidy's FIX-ITs (#15948) 2024-12-11 22:36:33 -05:00
.clang-format-ignore #41188: CleanUp old unary infra (#41468) 2026-04-20 11:26:11 +00:00
.clang-tidy [feature]: add KV Cache Chunk address lookup table definition (#40866) 2026-04-01 15:34:24 +00:00
.codechecker.json [skip ci] fix(copilot-autofix-clangsa): fix broken pipe error in jq query (#37179) 2026-02-05 16:15:18 +00:00
.codechecker.skiplist [skip ci] Don't scan UMD in clang static analyzer runs (#36300) 2026-01-21 23:55:26 -08:00
.gersemirc Format CMake files using gersemi (#14117) 2024-10-23 10:58:58 -04:00
.git-blame-ignore-revs [skip ci] Update git-blame-ignore-revs (#15577) 2024-11-29 20:11:12 -08:00
.gitattributes [skip ci] Add GitHub Agentic Workflows scaffolding and daily-repo-status workflow (#50535) 2026-07-21 01:59:38 -07:00
.gitignore [skip ci] [sweeps] Ignore every sweep export directory with one rule (#52143) 2026-08-05 04:05:27 +00:00
.gitmodules tt-cluster-descriptors submodule move (#47402) 2026-06-23 08:17:38 +00:00
.pre-commit-config.yaml [ttnn] pre-commit: forbid ProgramDescriptor rebuilds inside override_runtime_arguments (#51590) 2026-07-30 17:30:42 +00:00
.yamllint #0: Lint YAML files (#14696) 2024-11-05 11:31:45 -05:00
build_metal.sh [Feature] Add debug-verbosity Tracy zones (#46386) 2026-07-13 20:26:24 +00:00
CMakeLists.txt [ttnn] binary_ng: re-apply program-cache-hit args via override_runtime_arguments (fixes SDXL in-place PCC) (#49828) 2026-07-17 19:51:34 +00:00
CMakePresets.json [skip ci] clang-tidy: stub linker to skip link steps during analysis (#48412) 2026-07-06 19:08:05 +00:00
CODE_OF_CONDUCT.md #612: Add initial CODE_OF_CONDUCT.md 2023-05-29 16:02:26 -04:00
conftest.py Add BH GLX Wan2.2 tests to CI (#50939) 2026-08-01 21:16:41 +00:00
CONTRIBUTING.md Remove deprecated DPRINT functionality and update to DEVICE_PRINT (#44930) 2026-05-28 14:06:18 +00:00
create_venv.sh Fix create_venv.sh --force not passing --clear to uv venv (#43013) 2026-05-11 15:50:28 +00:00
install_dependencies.sh fix install script on aarch64 (#46042) 2026-07-31 21:27:09 +00:00
INSTALLING.md [skip ci] [Cleanup] Clarify container-based installation (#45693) 2026-08-01 02:56:34 +00:00
LICENSE [skip ci] Separate LICENSE and NOTICE per Apache guidelines (#36486) 2026-01-26 22:24:23 +00:00
LICENSE_understanding.txt Adding LICENSE_understanding.txt 2025-02-28 16:41:06 -08:00
MANIFEST.in Optimize Python Wheel File Size (#19960) 2025-04-17 16:57:29 +00:00
METALIUM_GUIDE.md RoundMode clarification (docs) 6/6 (#46854) 2026-06-16 18:50:03 +00:00
NOTICE [skip ci] Separate LICENSE and NOTICE per Apache guidelines (#36486) 2026-01-26 22:24:23 +00:00
pyproject.toml security: pin setuptools==80.10.2 across all requirements files and Dockerfiles (#44284) 2026-05-13 17:19:18 +00:00
pytest.ini [SDPA] Move sparse_sdpa / indexer_score perf checks to the realtime device profiler (#49878) 2026-07-22 10:00:18 +00:00
README.md [skip ci] Add CCL performance tuning tips to tech reports (#49595) 2026-07-13 18:06:59 +00:00
setup.py [Feature] Fabric Mux V2 (#48675) 2026-07-12 21:00:22 +00:00

tt-metal CI Ask DeepWiki

Hardware | Install | Discord | Join Us | Bounty $

ttnn logo

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

API Reference | Model Demos

The Models team is focused on developing the following models, optimizing them for performance, accuracy, and compatibility. Follow each model link for more details.

Important

For a full model list see the Model Matrix, or visit the Developer Hub.

Note

Performance Metrics:

  • Time to First Token (TTFT) measures the time (in milliseconds) it takes to generate the first output token after input is received.
  • T/S/U (Tokens per Second per User): Represents the throughput of first-token generation after prefill. It is calculated as 1 / inter-token latency.
  • T/S (Tokens per Second): Represents total token throughput, calculated as T/S = T/S/U x batch size.
  • TP (Tensor Parallel) and DP (Data Parallel): Indicate the parallelization factors across multiple devices.
  • Reported LLM Performance: Based on an input sequence length of 128 tokens for all models.
  • Performance Data Source: Metrics were collected using the tt-metal model demos (linked above). Results may vary when using other runtimes such as the vLLM inference server.

Llama 3.3 70B (TP=32)

Batch Hardware TTFT (MS) T/S/U Target
T/S/U
T/S TT-Metalium Release vLLM Tenstorrent Repo Release
32 Galaxy (Wormhole) 53 72.5 80 2268.8 v0.65.0-rc7 59be953

Qwen 2.5 7B (TP=2)

Batch Hardware TTFT (MS) T/S/U Target
T/S/U
T/S TT-Metalium Release vLLM Tenstorrent Repo Release
32 n300 (Wormhole) 109 22.1 30 707.2 v0.62.0-rc35 ced0161

Qwen 2.5 72B (TP=8)

Batch Hardware TTFT (MS) T/S/U Target
T/S/U
T/S TT-Metalium Release vLLM Tenstorrent Repo Release
32 QuietBox (Wormhole) 223 15.4 20 492.8 v0.62.0-rc25 e7c329b

Whisper (distil-large-v3)

Batch Hardware TTFT (MS) T/S/U Target
T/S/U
T/S TT-Metalium Release
1 n150 (Wormhole) 163 105.0 45 105.0 v0.65.0-dev20251208
1 p150 (Blackhole) 63 263.4 263.4 v0.65.0-dev20251208

Mixtral 8x7B (TP=8)

Batch Hardware TTFT (MS) T/S/U Target
T/S/U
T/S TT-Metalium Release
32 QuietBox (Wormhole) 122 24.9 33 796.8 v0.62.0-dev20251015

Blackhole software optimization is under active development. Please join us in shaping the future of open source AI!
[Discord] [Developer Hub]

For more information regarding vLLM installation and environment creation visit the Tenstorrent vLLM TT plugin README.

Model Updates

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

Model Bring-Up and Testing

For information on initial model procedures, please see Model Bring-Up and Testing

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

Scaleout Tech Reports

TT-Metalium Programming Examples

Hello World

Add Integers

Simple Tensor Manipulation

DRAM Data Movement

Eltwise

Matmul

Tools and Instruments

TT-NN Visualizer

A comprehensive tool for visualizing and analyzing model execution, offering interactive graphs, memory plots, tensor details, buffer overviews, operation flow graphs, and multi-instance support with file or SSH-based report loading.

TT-Exalens

The TT-Exalens repository describes TT-Lensium, a low-level debugging tool for Tenstorrent hardware. It allows developers to access and communicate with Wormhole and Blackhole devices.

TT-SMI

The TT-SMI repository describes the Tenstorrent System Management Interface. This command line utility can interact with Tenstorrent devices on host. TT-SMI provides an easy to use interface displaying device, telemetry, and firmware information.

Model Explorer

The Model Explorer is an intuitive and hierarchical visualization tool using model graphs. It organizes model operations into nested layers and provides features for model exploration and debugging.

Tracy Profiler

The Tracy Profiler is a real-time nanosecond resolution, remote telemetry, hybrid frame, and sampling tool. Tracy supports profiling CPU, GPU, memory allocation, locks, context switches, and more.

Device Print Debug

DPRINT can print variables, addresses, and circular buffer data from kernels to the host terminal or log file. This feature is useful for debugging issues with kernels.

Watcher

Watcher monitors firmware and kernels for common programming errors, and overall device status. If an error or hang occurs, Watcher displays log data of that occurrence.

Inspector

Inspector provides insights into host runtime. It logs necessary data for investigation and allows queries to host runtime data.

Latest Releases

Release Release Date FW Version KMD Version SMI Version
0.68.0 ETA Apr 30, 2026 19.2.0 2.5.0 3.0.38
0.67.4 Mar 30, 2026 19.2.0 2.5.0 3.0.38
0.67.0 Mar 25, 2026 19.2.0 2.5.0 3.0.38
0.66.0 Feb 18, 2026 19.2.0 2.5.0 3.0.38
0.65.1 Jan 12, 2026 19.2.0 2.5.0 3.0.38
0.65.0 Dec 15, 2025 19.2.0 2.5.0 3.0.38
0.64.5 Dec 1, 2025 18.12.0 2.4.1 3.0.32
0.64.4 Nov 24, 2025 18.12.0 2.4.1 3.0.32
0.64.3 Nov 14, 2025 18.12.0 2.4.1 3.0.32
0.64.0 Oct 29, 2025 18.12.0 2.4.1 3.0.32
0.63.0 Sep 22, 2025 18.8.0 2.3.0 3.0.28
0.62.2 Aug 20, 2025 18.6.0 2.0.0 3.0.20
0.61.0 Skipped - - -
0.60.1 Jul 22, 2025 18.6.0 2.0.0 3.0.20
0.59.0 Jun 18, 2025 - - -
0.58.0 May 13, 2025 - - -
0.57.0 Apr 15, 2025 - - -
0.56.0 Mar 7, 2025 - - -

Visit the releases folder for details on releases, release notes, and estimated release dates.

Tenstorrent Bounty Program Terms and Conditions

This repo is a part of Tenstorrents bounty program. If you are interested in helping to improve tt-metal, please make sure to read the Tenstorrent Bounty Program Terms and Conditions before heading to the issues tab. Look for the issues that are tagged with both “bounty” and difficulty level!

License

TT-Metalium and TTNN are licensed under the Apache 2.0 License, as detailed in LICENSE and LICENSE_understanding.txt.

Some distributable forms of this project—such as manylinux-compliant wheels—may need to bundle additional libraries beyond the standard Linux system libraries. For example:

  • libnuma
  • libhwloc
  • openmpi (when built with multihost support)
  • libevent (when built with multihost support)

These libraries are bound by their own license terms.