meltygui-pycuda
Namespaced pycuda bindings maintained for MeltyGUI, based on the upstream source recorded in UPSTREAM.json. Original authorship and licenses are preserved. This repository contains the binding source and its release tooling.
uv pip install meltygui-pycuda
import meltygui_pycuda
The current release is 2026.1.post2, with wheels for Linux x86-64 (glibc 2.28
or newer) on CPython 3.11, 3.12 and 3.13. It installs meltygui_pycuda without
overwriting the upstream pycuda package.
When no wheel matches
On any other platform or Python, pip and uv fall back to the source archive
without saying that no wheel matched. The build prints a banner naming your
platform and the prebuilt targets (installers show it with -v, or when the
build fails), and stops at once with a short message if the CUDA headers are
missing instead of compiling for a minute first. A source build needs a C++
compiler and a CUDA toolkit: put nvcc on PATH or set CUDA_ROOT. It takes
about a minute and links the toolkit's own cuRAND rather than a bundled copy.
uv ignores the upper Python bound, so on a newer Python it also builds from
source; pip refuses instead. Pass --only-binary meltygui-pycuda to make a
missing wheel an error rather than a compilation.
OpenGL interoperability and cuRAND are enabled. Wheels bundle cuRAND with its NVIDIA CUDA 12.1 license; the driver and nvcc are not bundled. Runtime kernel compilation still requires a compatible CUDA toolkit and NVIDIA driver.
Build
Docker is required. The manylinux image and Python build dependencies are pinned. The wheel is built from the generated source archive, which is also published for local compilation when a matching wheel is unavailable.
python3 tools/build.py --cuda-root /usr/local/cuda-12.1
python3 tools/verify.py dist
uvx --from twine==7.0.0 twine check --strict dist/*.whl dist/*.tar.gz
Use --sudo-docker if Docker requires sudo. Source builds require a C++ compiler and a CUDA toolkit with nvcc on PATH.
Publish
Pushes to main and pull requests build and test without uploading. A v* tag
or a manual run with publish=true publishes the verified wheel and source
archive through PyPI trusted publishing. Published versions cannot be replaced.
Configure a pending GitHub publisher at https://pypi.org/manage/account/publishing/:
| Field | Value |
|---|---|
| PyPI project | meltygui-pycuda |
| Owner | Attentio-AI |
| Repository | meltygui-pycuda |
| Workflow | release.yml |
| Environment | pypi |
Then, after the main-branch build passes, create and push v2026.1.post2.
No API token belongs in this repository.
Licenses and changes
See LICENSE, LICENSES, and MELTYGUI.md. The primary changes are the Python namespace, pinned build dependencies, Python 3.12 support, and OpenGL/cuRAND enabled by default.
Metadata
Release files for meltygui-pycuda 2026.1.post2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| meltygui_pycuda-2026.1.post2.tar.gz | 1.7 MB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| meltygui_pycuda-2026.1.post2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl | CPython 3.13 | CPython 3.13 | Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 | Details |
| meltygui_pycuda-2026.1.post2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 | Details |
| meltygui_pycuda-2026.1.post2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl | CPython 3.11 | CPython 3.11 | Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 | Details |
Total release size: 171.7 MB
Release files / meltygui_pycuda-2026.1.post2.tar.gz
| Download URL | meltygui_pycuda-2026.1.post2.tar.gz |
|---|---|
| Size | 1.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
33f122291ebc26ab1addaae2327f9365fe301a2e799d7627bf9b2ad3685b1fc4
|
|
BLAKE2b-256 checksum How to use checksums |
c36664e984c8cfdf710e03e170899a272f609100572a16de447a04eb7d44b368
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / meltygui_pycuda-2026.1.post2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | meltygui_pycuda-2026.1.post2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 56.7 MB |
| Tags | CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
238486594a895cb621b9fccabcf7fc9b51ee653c4649c2cc1c4a40b5402e0a9e
|
|
BLAKE2b-256 checksum How to use checksums |
3a6ae7c9f420a9bd1f7be69a52ab6119ef1ad0db48b29ea2e6767dd1a0b4cb86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / meltygui_pycuda-2026.1.post2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | meltygui_pycuda-2026.1.post2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 56.7 MB |
| Tags | CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
f1e1e781b0e1a47910387a75eea66074bfb153779ddf78760682dfbfe0e859c6
|
|
BLAKE2b-256 checksum How to use checksums |
5868b97ebab94a9767e99476c2c3ea520534f37c761f19846d144d356c304ad4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / meltygui_pycuda-2026.1.post2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
| Download URL | meltygui_pycuda-2026.1.post2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 56.7 MB |
| Tags | CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
e6a982ef8837f8c44f0751b7343c6acae938c2952c6ccd0af94f618e27d6c168
|
|
BLAKE2b-256 checksum How to use checksums |
46a0f5723586bc271f1ef8b00542d5bd642cbbed036cb79e8bc57f0f321e6a43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|