Hide navigation sidebar
Hide table of contents sidebar
Back to top
Toggle table of contents sidebar

# Installation

## Installing from source

Installing from source requires the latest CUDA Toolkit that matches the major.minor of CUDA Python installed.

Prior to installing the CUTLASS Python interface, one may optionally set the following environment variables:

- `CUTLASS_PATH`: the path to the cloned CUTLASS repository

- `CUDA_INSTALL_PATH`: the path to the installation of CUDA

If these environment variables are not set, the installation process will infer them to be the following:

- `CUTLASS_PATH`: one directory level above the current directory (i.e., `$(pwd)/..`)

- `CUDA_INSTALL_PATH`: the directory holding `/bin/nvcc` for the first version of `nvcc` on `$PATH` (i.e., `which nvcc | awk -F'/bin/nvcc' '{print $1}'`)

NOTE: The version of `cuda-python` installed must match the CUDA version in `CUDA_INSTALL_PATH`.

### Installing a developer-mode package

The CUTLASS Python interface can currently be installed via:

    python setup.py develop --user

This will allow changes to the Python interface source to be reflected when using the Python interface.

We plan to add support for installing via `python setup.py install` in a future release.

## Docker

To ensure that you have all of the necessary Python modules for running the examples using the CUTLASS Python interface, we recommend using one of the Docker images located in the docker directory.

For example, to build and launch a container that uses CUDA 12.1 via an NGC PyTorch container, run:

    docker build -t cutlass-cuda12.1:latest -f docker/Dockerfile-cuda12.1-pytorch .
    docker run --gpus all -it --rm cutlass-cuda12.1:latest

The CUTLASS Python interface has been tested with CUDA 11.8, 12.0, and 12.1 on Python 3.8.10 and 3.9.7.