cuda-tile
CUDA Tile Compiler
What it is and what it does
cuTile Python is a compiler that lets you write GPU kernels in Python using a tile-based programming model, targeting NVIDIA GPUs. You write kernels decorated with @ct.kernel, define tile loads and stores, and launch them on the GPU via ct.launch(). It abstracts away low-level CUDA details while giving you fine-grained control over how data is tiled and computed in parallel.
The package requires a modern NVIDIA driver (r580+) and CUDA Toolkit 13.1+ to run. It compiles kernels using Tile IR and the tileiras compiler, which currently supports Blackwell and Ampere/Ada GPUs. You can install it with optional tileiras support built into your Python environment, or use a system-wide CUDA Toolkit installation. It has minimal runtime dependencies (only typing-extensions) and provides prebuilt wheels for Python 3.10–3.14 on Linux and Windows.
Use it for:
- Write custom GPU kernels for dense linear algebra operations without hand-coding CUDA C++
- Develop tile-based GPU computations for scientific computing or machine learning on supported GPUs
- Prototype and optimize GPU algorithms in Python with direct control over tile shapes and memory patterns
- Integrate GPU kernels into Python workflows for data interchange with GPU array libraries
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
cuTile Python is a compiler and programming language for writing GPU kernels that run on NVIDIA GPUs, allowing you to write parallel tile-based computations in Python that execute on the GPU.
Yes, if you have a supported NVIDIA GPU (Ampere, Ada, or Blackwell) and need to write custom GPU kernels in Python. The package is actively maintained, has no known vulnerabilities, and offers a genuine productivity gain over hand-written CUDA C++. Install friction is moderate due to driver and toolkit requirements, but prebuilt wheels and optional tileiras bundling ease setup. Not suitable if you lack a supported GPU or cannot meet the driver/toolkit prerequisites.
Install
cuda-tile on PyPI
pip
pip install cuda-tileuv
uv add cuda-tilepoetry
poetry add cuda-tileInstalling cuda-tile
Before you install
Medium install friction due to compiled C++ extension and NVIDIA driver requirements. Active maintenance with recent releases; requires NVIDIA Driver r580 or later and CUDA Toolkit 13.1+. Prebuilt wheels available for Python 3.10–3.14 on Linux (aarch64, x86_64) and Windows.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; suitable for most projects.
Quickstart
pip install cuda-tile[tileiras]
import cuda.tile as ct
import typing_extensions
@ct.kernel
def vector_add_kernel(a, b, result):
block_id = ct.bid(0)
a_tile = ct.load(a, index=(block_id,), shape=(16,))
b_tile = ct.load(b, index=(block_id,), shape=(16,))
result_tile = a_tile + b_tile
ct.store(result, index=(block_id,), tile=result_tile)
Requires NVIDIA Driver r580 or later, CUDA Toolkit 13.1+, and a supported GPU (Blackwell, Ampere, or Ada). C++17 compiler and CMake 3.18+ needed to build from source.
Verify before relying
- Whether Hopper GPU support is available in versions after 1.5.0 (docs note it 'will be supported in coming versions')
- Performance characteristics and overhead compared to hand-written CUDA C++
- Compatibility with GPU array libraries and ML frameworks for practical workflows
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (<3.15,>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 1 — typing-extensions |
| Maintenance | actively maintained — 37 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,783,144/month — #2,498 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: cuda_tile-1.5.0-cp310-cp310-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp310-cp310-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp310-cp310-win_amd64.whl; cuda_tile-1.5.0-cp311-cp311-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp311-cp311-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp311-cp311-win_amd64.whl; cuda_tile-1.5.0-cp312-cp312-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp312-cp312-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp312-cp312-win_amd64.whl; cuda_tile-1.5.0-cp313-cp313-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp313-cp313-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp313-cp313-win_amd64.whl; cuda_tile-1.5.0-cp314-cp314-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp314-cp314-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp314-cp314t-manylinux2014_aarch64.whl; cuda_tile-1.5.0-cp314-cp314t-manylinux2014_x86_64.whl; cuda_tile-1.5.0-cp314-cp314t-win_amd64.whl; cuda_tile-1.5.0-cp314-cp314-win_amd64.whl
Tags
More Compilers packages
pyparsing provides a library for building text…
permissive · top 1,000 on PyPI
CythonCython is a source code translator that…
permissive · top 1,000 on PyPI
asttokensAnnotates Python abstract syntax trees with the…
permissive · top 1,000 on PyPI
numbaNumba is a just-in-time compiler that…
permissive · top 1,000 on PyPI
tree-sitterPython bindings to the tree-sitter parsing…
permissive · top 1,000 on PyPI
llvmlitellvmlite provides a lightweight Python binding…
permissive · top 1,000 on PyPI
cuda-pythoncuda-python is a metapackage providing Pythonic…
unclear · top 5,000 on PyPI
tilelangTilelang is a domain-specific language for…
permissive · top 5,000 on PyPI
nvidia-cutlass-dslProvides a Python native interface for writing…
unclear · top 5,000 on PyPI
nvidia-cutlass-dsl-libs-cu13Provides a Python DSL for writing…
unclear · top 5,000 on PyPI
nvidia-cutlass-dsl-libs-baseProvides Python interfaces for writing…
unclear · top 5,000 on PyPI
nvidia-cutlass-dsl-libs-cu12Provides a Python DSL for writing…
unclear · top 5,000 on PyPI
cuda-coreProvides Pythonic APIs to access CUDA core…
permissive · top 5,000 on PyPI
cufile-pythonProvides a Python wrapper around the NVIDIA…
permissive · top 15,000 on PyPI
nvidia-cutlass-dsl-libs-coreProvides a Python interface for writing…
unclear · top 5,000 on PyPI
cuda-bindingsProvides low-level Python bindings for CUDA…
unclear · top 1,000 on PyPI