System requirements
Minimum requirements
- GPU: NVIDIA GPU with compute capability 7.0 or higher (Volta architecture or newer)
- CUDA Toolkit: Version 11.4 or higher
- Compiler: C++17 compatible compiler
- GCC 7.5.0 or higher (GCC 8.5.0 has known issues, use 7.5 or 9+)
- Clang 7.0 or higher
- MSVC 2019 or higher
- CMake: Version 3.19 or higher (for building examples and tests)
- Python: Version 3.8 or higher (for Python interface)
Recommended requirements
- CUDA Toolkit: Version 12.8 or higher
- GPU: Hopper (H100, H200) or Blackwell (B200, B300, RTX 50 series)
- Compiler: GCC 11.2+ or Clang 14+
- Python: Version 3.9 or higher
CUTLASS 4.4.1 is optimized for CUDA 12.8+ and performs best on Hopper and Blackwell architectures with access to the latest Tensor Core features.
Supported platforms
Operating systems
GPU architectures
Hopper and Blackwell architectures require the “a” suffix for architecture-accelerated features (e.g.,
sm_90a, sm_100a) to enable advanced Tensor Core instructions.C++ installation
CUTLASS is a header-only library - no compilation or installation is required to use it in your projects.1
Clone the repository
2
Set environment variables
Set Set Add to your
CUTLASS_PATH for easy reference:CUDACXX to point to your NVCC compiler:.bashrc or .zshrc for persistence:3
Include in your project
Add CUTLASS headers to your include path:Direct compilation:CMake project:In your source code:
CMakeLists.txt
4
Verify installation (optional)
Build and run CUTLASS examples to verify your setup:Expected output:
CMake integration
For projects using CMake, you can use CUTLASS as an imported target:Architecture-specific builds
To compile for specific GPU architectures and reduce build time:Python installation
The CUTLASS Python interface is distributed as thenvidia-cutlass package.
1
Install from PyPI
The easiest way to install:
The package name is
nvidia-cutlass. Other packages named cutlass are not affiliated with NVIDIA CUTLASS.2
Install matching cuda-python
Ensure Check your CUDA version:
cuda-python version matches your CUDA Toolkit:3
Verify installation
Test the installation:
Install from source
For development or to use the latest features:1
Clone the repository
2
Set optional environment variables
3
Install the package
For regular installation:For development (changes reflect immediately):
4
Install additional dependencies
The CUTLASS Python interface requires:These are installed automatically with
pip install nvidia-cutlass.Python requirements
The CUTLASS Python interface has the following dependencies:- Python: 3.8, 3.9, 3.10, 3.11
- CUDA: 11.8, 12.0, 12.1, 12.8, 13.0+
- Platforms: Linux (Ubuntu 18.04+), Windows (experimental)
CuTe DSL installation
CuTe DSL is a Python interface for writing CUDA kernels.1
Navigate to CuTe DSL directory
2
Run the setup script
For CUDA 12.x:For CUDA 13.1:
3
Verify installation
CuTe DSL requires CUTLASS C++ headers to be available. Set
CUTLASS_PATH environment variable or install from the CUTLASS repository.CuTe DSL features
- CUDA Toolkit 13.1 support with GB300 (SM103) support
- Ahead-of-Time (AoT) compilation for faster kernel loading
- JAX integration for use with JAX workflows
- Experimental API with fragment-free programming model
- Automatic TMA descriptor generation for Hopper/Blackwell
Docker installation
The easiest way to get started with a complete environment:- CUDA Toolkit
- cuDNN and cuBLAS libraries
- Python with PyTorch
- Development tools (gcc, cmake, etc.)
Environment setup
Recommended environment variables
Add these to your shell configuration for convenience:~/.bashrc
Build configuration
For CMake builds, create a configuration file:cutlass_config.cmake
Troubleshooting
CUDA Toolkit not found
CUDA Toolkit not found
Python import errors
Python import errors
Verify Reinstall with correct version:
cuda-python matches your CUDA version:Compiler version issues
Compiler version issues
Check your GCC version:GCC 8.5.0 has known issues. Use GCC 7.5 or 9+:
CMake version too old
CMake version too old
Install newer CMake:
Architecture mismatch errors
Architecture mismatch errors
Ensure you’re using the correct compute capability:Use matching architecture flag:
- 8.0 →
-gencode arch=compute_80,code=sm_80 - 9.0 →
-gencode arch=compute_90a,code=sm_90a(note the “a”) - 10.0 →
-gencode arch=compute_100a,code=sm_100a
Windows build failures
Windows build failures
Windows support is currently limited. For production use:
- Use WSL2 with Ubuntu
- Use Docker Desktop with Linux containers
- Use a Linux system or VM
Next steps
Quick start guide
Build your first GEMM kernel
C++ examples
Explore example kernels
Python examples
Python notebooks and scripts
Performance guide
Profile and optimize kernels
Getting help
If you encounter issues:- Check the CUTLASS GitHub Issues
- Review the CUTLASS documentation
- Ask questions on NVIDIA Developer Forums