# Installation ```eval_rst .. toctree:: :glob: :maxdepth: 4 ``` ## Release Links - [Latest Omnitrace Release](https://github.com/ROCm/omnitrace/releases/latest) - [All Omnitrace Releases](https://github.com/ROCm/omnitrace/releases) ## Quick Start (Latest Release, Binary Installer) Download the [omnitrace-install.py](https://github.com/ROCm/omnitrace/releases/latest/download/omnitrace-install.py) and specify `--prefix `. This script will attempt to auto-detect the appropriate OS distribution and OS version. If ROCm support is desired, specify `--rocm X.Y` where `X` is the ROCm major version and `Y` is the ROCm minor version, e.g. `--rocm 6.0`. ```shell wget https://github.com/ROCm/omnitrace/releases/latest/download/omnitrace-install.py python3 ./omnitrace-install.py --prefix /opt/omnitrace --rocm 6.0 ``` This script supports installation on Ubuntu, OpenSUSE, RedHat, Debian, CentOS, and Fedora. If the target OS is compatible with one of the [operating system versions](#operating-system-support) below, specify `-d -v `, e.g. if the OS is compatible with Ubuntu 18.04, pass `-d ubuntu -v 18.04` to the script. ## Operating System Support OmniTrace is only supported on Linux. The following distributions are tested: - Ubuntu 18.04 - Ubuntu 20.04 - Ubuntu 22.04 - OpenSUSE 15.2 - OpenSUSE 15.3 - OpenSUSE 15.4 - RedHat 8.7 - RedHat 9.0 - RedHat 9.1 Other OS distributions may be supported but are not tested. ### Identifying the Operating System If you are unsure of the operating system and version, the `/etc/os-release` and `/usr/lib/os-release` files contain operating system identification data for Linux systems. ```shell $ cat /etc/os-release NAME="Ubuntu" VERSION="20.04.4 LTS (Focal Fossa)" ID=ubuntu ... VERSION_ID="20.04" ... ``` The relevent fields are `ID` and the `VERSION_ID`. ## Architecture With regards to instrumentation, at present only amd64 (x86_64) architectures are tested; however, Dyninst supports several more architectures and thus, omnitrace instrumentation may support other CPU architectures such as aarch64, ppc64, etc. Other modes of use, such as sampling and causal profiling, are not dependent on Dyninst and therefore may be more portable. ## Installing omnitrace from binary distributions Every omnitrace release provides binary installer scripts of the form: ```shell omnitrace-{VERSION}-{OS_DISTRIB}-{OS_VERSION}[-ROCm-{ROCM_VERSION}[-{EXTRA}]].sh ``` E.g.: ```shell omnitrace-1.0.0-ubuntu-18.04-OMPT-PAPI-Python3.sh omnitrace-1.0.0-ubuntu-18.04-ROCm-405000-OMPT-PAPI-Python3.sh ... omnitrace-1.0.0-ubuntu-20.04-ROCm-50000-OMPT-PAPI-Python3.sh ``` Any of the EXTRA fields with a cmake build option (e.g. PAPI, see below) or no link requirements (e.g. OMPT) have self-contained support for these packages. ### Download the appropriate binary distribution ```shell wget https://github.com/ROCm/omnitrace/releases/download/v/