Skip to main content

thor-cuda

Official CUDA backend package for the Thor deep learning framework.

Thor is a C++/CUDA deep learning framework focused on high-performance tensor expression compilation, fusion, and GPU execution.

Status

This package is pre-alpha.

License

Apache License 2.0. See LICENSE.

Release wheel flow

The public thor-cuda wheel build is the complete native release build. From bindings/python, one command compiles the shared host implementation once, compiles each supported SM once, and emits the three raw wheels together:

rm -rf build dist wheelhouse
python -m build --wheel

The expected raw release set is:

thor_cuda-<version>-cp312-cp312-linux_x86_64.whl
thor_cuda_kernels_sm89-<version>-py3-none-linux_x86_64.whl
thor_cuda_kernels_sm120-<version>-py3-none-linux_x86_64.whl

In the manylinux_2_28 release container, repair and verify the complete set with the source-tree CMake release entry point:

cd ../..
cmake -DTHOR_RELEASE_ACTION=repair -P cmake/ThorWheelRelease.cmake

The release entry point invokes auditwheel and Twine through the release Python interpreter (python -m auditwheel, python -m twine) rather than requiring their console-script wrappers on PATH. In the Thor manylinux image it automatically selects /opt/python/cp312-cp312/bin/python; override this with -DTHOR_RELEASE_PYTHON_EXECUTABLE=/path/to/python when needed.

This is deliberately a source-tree CMake script rather than a target in the scikit-build build directory. python -m build configures that directory using a temporary isolated PEP 517 environment whose Ninja/CMake executables may no longer exist after the build command returns.

This recreates wheelhouse/, runs auditwheel repair on each distribution, keeps the NVIDIA CUDA/cuDNN user-space libraries external, explicitly keeps libThor.so external to thor-cuda, and then verifies all of the release invariants together: exact Thor/kernel versions, one backend per kernel wheel, no backend in the central wheel, no bundled NVIDIA runtime libraries, manylinux_2_28_x86_64 tags, and the configured per-wheel PyPI size ceiling. It finishes by running twine check on all three repaired wheels.

After installing and testing the repaired wheels, publication is also CMake orchestrated. Credentials remain standard Twine configuration/environment:

export TWINE_USERNAME=__token__
export TWINE_PASSWORD='...'
export THOR_PUBLISH_CONFIRM=YES
cmake -DTHOR_RELEASE_ACTION=publish -P cmake/ThorWheelRelease.cmake

The publish action recreates and re-verifies the wheelhouse before uploading in dependency order: thor-cuda-kernels-sm89, then thor-cuda-kernels-sm120, then thor-cuda. The public package is intentionally last because it requires both kernel distributions at the exact same version. For TestPyPI, also export THOR_TWINE_REPOSITORY=testpypi before invoking the publish target.

Metadata

Release files for thor-cuda 0.0.38

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for thor-cuda 0.0.38
File Interpreter ABI Platform Actions
thor_cuda-0.0.38-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for thor_cuda-0.0.38-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Release files / thor_cuda-0.0.38-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL thor_cuda-0.0.38-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 1.4 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e63fc6afc0aa270b5ffcb2bb668b777e1de926f82764667ecc79680e193fce33
BLAKE2b-256 checksum
How to use checksums
f979ba012eaebddcb911ee988486394d30b14388987b421e1c7e284e6e93a5ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for thor-cuda 0.0.38

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.38 This release

1 release file No provenance

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