CUDA Kernel Benchmarking Package
Project description
CUDA Kernel Benchmarking Package
This package provides a Python API to the CUDA Kernel Benchmarking
Library NVBench.
Installation
Install from PyPi
pip install cuda-bench[cu13] # For CUDA 13.x
pip install cuda-bench[cu12] # For CUDA 12.x
Building from source
Ensure recent version of CMake
Since nvbench requires a rather new version of CMake (>=3.30.4), either build CMake from sources, or create a conda environment with a recent version of CMake, using
conda create -n build_env --yes cmake ninja
conda activate build_env
Ensure CUDA compiler
Since building NVBench library requires CUDA compiler, ensure that appropriate environment variables
are set. For example, assuming CUDA toolkit is installed system-wide, and assuming Ampere GPU architecture:
export CUDACXX=/usr/local/cuda/bin/nvcc
export CUDAARCHS=86
Build Python project
Now switch to python folder, configure and install NVBench library, and install the package in editable mode:
cd nvbench/python
pip install -e .
Verify that package works
python test/run_1.py
Run examples
# Example benchmarking numba.cuda kernel
python examples/throughput.py
# Example benchmarking kernels authored using cuda.core
python examples/axes.py
# Example benchmarking algorithms from cuda.cccl.parallel
python examples/cccl_parallel_segmented_reduce.py
# Example benchmarking CuPy function
python examples/cupy_extract.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cuda_bench-0.2.0-cp313-cp313-manylinux_2_27_x86_64.whl.
File metadata
- Download URL: cuda_bench-0.2.0-cp313-cp313-manylinux_2_27_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.13, manylinux: glibc 2.27+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e30329e4420442d57ffb551f7c1c78a602b7e098157f05a1d970bbe02b00e855
|
|
| MD5 |
97b691305112e97ca210186744ec4d60
|
|
| BLAKE2b-256 |
26bb7c1443441700212f9f5b3319c0b9cbe5b4588860bd08110c8441029462c4
|
Provenance
The following attestation bundles were made for cuda_bench-0.2.0-cp313-cp313-manylinux_2_27_x86_64.whl:
Publisher:
publish-wheels.yml on NVIDIA/nvbench
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cuda_bench-0.2.0-cp313-cp313-manylinux_2_27_x86_64.whl -
Subject digest:
e30329e4420442d57ffb551f7c1c78a602b7e098157f05a1d970bbe02b00e855 - Sigstore transparency entry: 909562848
- Sigstore integration time:
-
Permalink:
NVIDIA/nvbench@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/NVIDIA
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cuda_bench-0.2.0-cp312-cp312-manylinux_2_27_x86_64.whl.
File metadata
- Download URL: cuda_bench-0.2.0-cp312-cp312-manylinux_2_27_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.12, manylinux: glibc 2.27+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5636d12b95df877c6af27a3359528875280c100ca6c266f354f1296486efd671
|
|
| MD5 |
6c83540cbd4d5d610d8f71071ce6571b
|
|
| BLAKE2b-256 |
01354263638e255cddf818f557c5f8528dc671d5a492ae56f3f08df18482c854
|
Provenance
The following attestation bundles were made for cuda_bench-0.2.0-cp312-cp312-manylinux_2_27_x86_64.whl:
Publisher:
publish-wheels.yml on NVIDIA/nvbench
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cuda_bench-0.2.0-cp312-cp312-manylinux_2_27_x86_64.whl -
Subject digest:
5636d12b95df877c6af27a3359528875280c100ca6c266f354f1296486efd671 - Sigstore transparency entry: 909562836
- Sigstore integration time:
-
Permalink:
NVIDIA/nvbench@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/NVIDIA
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cuda_bench-0.2.0-cp311-cp311-manylinux_2_27_x86_64.whl.
File metadata
- Download URL: cuda_bench-0.2.0-cp311-cp311-manylinux_2_27_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.11, manylinux: glibc 2.27+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ad76bbead32857a1ed62839f06b65947131ad74d73b20a64ff5f65e32887704
|
|
| MD5 |
91e7aca04e0d6450d4877bc64c56e448
|
|
| BLAKE2b-256 |
2dce3a931ce7a602d31d5b9f73aa6a53599d9406a89192f799dc7dbf3f63fcf6
|
Provenance
The following attestation bundles were made for cuda_bench-0.2.0-cp311-cp311-manylinux_2_27_x86_64.whl:
Publisher:
publish-wheels.yml on NVIDIA/nvbench
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cuda_bench-0.2.0-cp311-cp311-manylinux_2_27_x86_64.whl -
Subject digest:
4ad76bbead32857a1ed62839f06b65947131ad74d73b20a64ff5f65e32887704 - Sigstore transparency entry: 909562851
- Sigstore integration time:
-
Permalink:
NVIDIA/nvbench@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/NVIDIA
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cuda_bench-0.2.0-cp310-cp310-manylinux_2_27_x86_64.whl.
File metadata
- Download URL: cuda_bench-0.2.0-cp310-cp310-manylinux_2_27_x86_64.whl
- Upload date:
- Size: 2.4 MB
- Tags: CPython 3.10, manylinux: glibc 2.27+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccd0de0a93c6db9fb2fcec62f70a77715a9fa357368b2bedb5a694a74c5d0cf3
|
|
| MD5 |
494319bfd63647f4dd11bbb7daa5fd89
|
|
| BLAKE2b-256 |
301f4470a2975a8b1e804ade33338f785e4da8e2862d275edbfa5eb8c8ab2411
|
Provenance
The following attestation bundles were made for cuda_bench-0.2.0-cp310-cp310-manylinux_2_27_x86_64.whl:
Publisher:
publish-wheels.yml on NVIDIA/nvbench
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cuda_bench-0.2.0-cp310-cp310-manylinux_2_27_x86_64.whl -
Subject digest:
ccd0de0a93c6db9fb2fcec62f70a77715a9fa357368b2bedb5a694a74c5d0cf3 - Sigstore transparency entry: 909562831
- Sigstore integration time:
-
Permalink:
NVIDIA/nvbench@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Branch / Tag:
refs/heads/main - Owner: https://github.com/NVIDIA
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-wheels.yml@dc59f98ecd4a75b322be5f71b7ecf6b6c7c65a6f -
Trigger Event:
workflow_dispatch
-
Statement type: