Skip to main content

unitarylab-cu12

CUDA 12 native gate backend for UnitaryLab.

This repository branch builds the CUDA backend as an independent Python wheel. The PyPI distribution name is unitarylab-cu12; the Python import package is unitarylab_cu12.

Supported environment

  • Linux x86_64 and Linux aarch64 server environments
  • Windows x86-64
  • CPython 3.10, 3.11, and 3.12
  • CUDA 12 runtime provided by nvidia-cuda-runtime-cu12
  • NVIDIA driver compatible with the CUDA version used by the wheel

Linux aarch64 wheels target server environments and do not promise Jetson compatibility. macOS, Windows ARM64, and Python 3.13 are not part of the wheel matrix.

Build

Building requires a CUDA 12 development toolkit, a C++ compiler, CMake, and Ninja. Build wheels only; source distributions are intentionally disabled.

python -m build --wheel

Override the CUDA architecture list when necessary:

UNITARYLAB_CUDA_ARCHS="80-real;86-real;89-real;90-real" \
  python -m build --wheel

Install a wheel

python -m pip install unitarylab-cu12

Verify the native extension import:

from unitarylab_cu12 import cugates

print(cugates.__doc__)

On Linux, the extension RUNPATH locates libcudart.so.12 in the NVIDIA runtime wheel. On Windows, the Python package registers the runtime wheel's nvidia/cuda_runtime/bin directory before loading cugates.pyd; a complete system CUDA Toolkit is not required at runtime.

The machine must still have an NVIDIA driver compatible with CUDA 12. Import checks performed by GitHub Actions verify wheel and runtime-library loading on GPU-less runners; they do not execute CUDA kernels.

GitHub Actions

The Build CUDA Wheels workflow is started manually with workflow_dispatch. It builds Linux x86_64, Linux aarch64, and Windows AMD64 wheels, validates their native dependencies, then stores them as GitHub Actions artifacts for 14 days. It does not publish to PyPI.

Synchronize CUDA sources from main

Keep release-specific packaging files on this branch and synchronize only the shared CUDA source directory:

git switch release/cu12
git fetch origin main
git restore --source origin/main -- unitarylab/backend/cugates/src
git diff
git add unitarylab/backend/cugates/src
git commit -m "sync: update cugates sources from main"

Do not merge main into this branch; doing so would restore the full UnitaryLab source tree.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

unitarylab_cu12-0.1.0-cp312-cp312-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.12Windows x86-64

unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

unitarylab_cu12-0.1.0-cp311-cp311-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.11Windows x86-64

unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_aarch64.whl (3.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

unitarylab_cu12-0.1.0-cp310-cp310-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.10Windows x86-64

unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

File details

Details for the file unitarylab_cu12-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 09374302e968cb162a65089c18afb26bcf822376ff858f0260d4151ba882c509
MD5 190845af6d7bf1ac110a18185ff5f5f8
BLAKE2b-256 832d9708e9368cbb7d8c9192424b2bbecd7b9f4f8a7ae9580d17e133fafc5edd

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 43a453f7719b4f36bf1bbb259d38187ea19e4d7aee725689c4ae53e05385d99f
MD5 c4a17ed2cf50f652d32c3930f118ac41
BLAKE2b-256 6994655701b59bbd0e9cae74332d13b822693f237bb11e93084efee7bbf75607

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 28b592d7d7dcd7a48c110ed7811d32bfc2310aa2394abce2aa2da0f487bd3d90
MD5 61dba735b373599c581edfa5b730e0b0
BLAKE2b-256 3e882d58c7e9a37647577020d9292c4d8f8a05e52b55b44c182fab6395ec4c60

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 298c0901fbd420331c2e8062ba6cad73c89b9a21702a68e7e825f4350764fdbe
MD5 83de650baf4b02dc89612b955bfcfa61
BLAKE2b-256 925eb0e0cc9dee63d8d4f82ca47eed1d341c9854c38965acde3dcbea0413b825

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 cc8badde2a2f7bf3dbeea1d5c17bb90f3621fd7b57ef5e036234779b7683d035
MD5 7fe51e2ef3af293cec9d741008e0af16
BLAKE2b-256 6844b4591fd3574064c10692179c22da2e6dee651d8b9f137c84327885fd2886

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 7de66eb3b1b05af990e85c071559d0dadae730113aa7e8fd5ec326815d5d665e
MD5 3bd3b1ddefeb245756932f1aa05c5dfd
BLAKE2b-256 90f00975909f43436121dc4d969aa4dd7c6d03a4642088b7a5fcd55b184ab803

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9429fc879d4116ee463547839ff82b70bc325df7f6a8746e1cb3b1c606668a62
MD5 a731bbd617dc36f8bc716ce302bfe638
BLAKE2b-256 2530482c02eb3cc728e03f223eb4023ee49bb9e731ae276fa856b4f1fcf7b484

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 efe75b51d6566f2dd711a75eadcb13640759f8a0d9787fe9d34b9f6d7424a94e
MD5 7dfc935d0d2fe50e75fdaee380690fdb
BLAKE2b-256 de3306fc560369cdc48f3ffa0a44c41ae57c9ed6fab15c6b32e5b983fe8653aa

See more details on using hashes here.

File details

Details for the file unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for unitarylab_cu12-0.1.0-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 b32bd43d929cba71c1f4c44eeb5c4d30d9e1faad7d887fb55b7ce919c45b232d
MD5 b49fc57a489bd9dfc5e6a57711c9884b
BLAKE2b-256 9f261386015376f8fe6357e18c3d56a609f52801fb654d2738396a6bcfe07136

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.0

9 files

This release

0.1.0 This release

9 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page