Building extensions

Omnistat includes optional extensions that can be built and installed to provide additional data collectors.

ROCprofiler

The ROCprofiler extension provides access to low-level GPU hardware counters for in-depth performance analysis. There are different ways to build and install this extension depending on how Omnistat is installed.

Install with setuptools

This method builds the extension in-place, without installing an Omnistat package.

# Install build dependencies
pip install cmake-build-extension nanobind

# Build and install extension in place
BUILD_ROCPROFILER_SDK_EXTENSION=1 python setup.py build_ext --inplace

Install with pip

This method builds the extension and installs Omnistat as a package.

BUILD_ROCPROFILER_SDK_EXTENSION=1 pip install .[query]

With a venv virtual environment:

python -m venv ~/venv/omnistat
BUILD_ROCPROFILER_SDK_EXTENSION=1 ~/venv/omnistat/bin/python -m pip install .[query]