Install the tenstorrent software stack with one command.
/bin/bash -c "$(curl -fsSL https://github.com/tenstorrent/tt-installer/releases/latest/download/install.sh)"
WARNING: Take care with this command! Always be careful running untrusted code.
In addition to our system-level tools, this script installs tt-metalium, Tenstorrent's framework for building and running AI models. Metalium is installed as a container using Podman. You have two container options, both of which can be installed:
- tt-metalium container (default): 1GB, appropriate for using TT-NN
- tt-metalium Model Demos Container (experimental!): 10GB, includes a full build of tt-metalium
Using the containers is easy- just run tt-metalium
or tt-metalium-models
. By default, this will launch the container with your home directory mounted so you can access your files. You can also run tt-metalium <command>
to run commands inside the container, such as tt-metalium "python3"
.
For more about Metalium and TTNN, check out the examples page. For more information about the container, see this page on the wiki.
tt-installer installs two Python tools on your system:
- tt-smi: Tenstorrent's System Management Interface
- tt-flash: Utility to update your firmware
Running tt-smi
launches the interface where you can see your hardware status and confirm the install worked properly.
tt-installer performs the following actions on your system:
- Using your package manager, installs base packages the software stack depends on
- Configures a Python environment to install Python packages
- Installs tenstorrent's Kernel-Mode Driver (KMD)
- Installs tt-flash and updates your card's firmware
- Configures HugePages, which are necessary for fast access to your Tenstorrent hardware
- Installs tt-smi, our System Management Interface
- Using your package manager, installs Podman
- Installs tt-metalium as a Podman container and configures the tt-metalium script for convenient access to it
The installer will ask the user to make choices about Python environments and tt-metalium. If you wish to configure the installation more granularly, see Advanced Usage.
The installer supports command-line arguments for customization. For a full list of available arguments and their environment variable equivalents, please see this page on the wiki.
To install from a local file, download the latest install.sh:
curl -fsSL https://github.com/tenstorrent/tt-installer/releases/latest/download/install.sh -O
chmod +x install.sh
./install.sh
To see all available options:
./install.sh --help
To install without prompting the user:
./install.sh --mode-non-interactive
To skip certain components:
./install.sh --no-install-kmd --no-install-hugepages
To specify versions:
./install.sh --kmd-version=1.34 --fw-version=18.3.0
Note that the installer requires superuser (sudo) permisssions to install packages, add DKMS modules, and configure hugepages.
Our preferred OS is Ubuntu 22.04.5 LTS (Jammy Jellyfish). Other operating systems will not be prioritized for support or features. For more information, please see this compatibility matrix:
OS | Version | Working? | Notes |
---|---|---|---|
Ubuntu | 24.04.2 LTS | Yes | None |
Ubuntu | 22.04.5 LTS | Yes | None |
Ubuntu | 20.04.6 LTS | Yes | - Deprecated; support will be removed in a later release - Metalium cannot be installed |
Debian | 12.10.0 | Yes | - Curl is not installed by default - The packaged rustc version is too old to complete installation, we recommend using rustup to install a more modern version |
Fedora | 41 | Yes | May require restart after base package install |
Fedora | 42 | Yes | May require restart after base package install |
Other DEB-based distros | N/A | N/A | Unsupported but may work |
Other RPM-based distros | N/A | N/A | Unsupported but may work |