This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
rakka-accel (Python)
Python bindings for rakka-accel — drive an actor-supervised NVIDIA CUDA pipeline directly from Python without juggling streams, contexts, or hand-rolled retry loops.
import numpy as np
import rakka_accel
with rakka_accel.System.open("my-app") as sys:
dev = sys.spawn_device(device_id=0) # real CUDA device
# Allocate two N×N f32 buffers on-device.
n = 256
a = dev.allocate_f32(n * n)
b = dev.allocate_f32(n * n)
c = dev.allocate_f32(n * n)
# Upload from numpy.
dev.copy_from_numpy(a, np.ones(n * n, dtype=np.float32))
dev.copy_from_numpy(b, np.full(n * n, 2.0, dtype=np.float32))
# Run cuBLAS SGEMM — the call blocks until the kernel finishes.
dev.sgemm(a, b, c, m=n, n=n, k=n, alpha=1.0, beta=0.0)
# Pull the result back into a fresh numpy array.
result = dev.copy_to_numpy(c)
print(result.reshape(n, n))
For hosts without a GPU, pass mock=True to spawn_device and the
device replies Unrecoverable("...mock mode") for any kernel call —
useful for testing the surrounding plumbing in CI.
Install
The wheel builds with maturin:
# from this directory
pip install maturin pytest numpy
maturin develop --release # builds + installs into the active venv
pytest tests/ # runs the no-GPU smoke suite
For a release wheel:
maturin build --release --no-default-features --features extension-module
# wheel lands in target/wheels/
The pure-Python facade (python/rakka_accel/__init__.py) re-exports
the native classes and exception types. Downstream libraries import
from rakka_accel and treat rakka_accel._native as private.
Feature flags
The Rust crate matches rakka-accel's feature gating so the wheel can
be built minimal or full:
| Feature | Adds |
|---|---|
| (default) | System, Device, GpuBuffer, exceptions |
curand |
RngGenerator |
nvrtc |
NvrtcKernel |
cudnn / cufft / cusolver / cublaslt / nccl |
placeholder; future Python surfaces |
core-libs / training-libs / full-cuda |
aggregates |
maturin develop --features rakka-accel-py/curand,rakka-accel-py/nvrtc
Public API
| Class / function | What it wraps |
|---|---|
rakka_accel.System.open(name) |
A rakka_core::actor::ActorSystem lifetime |
system.spawn_device(id, mock=) |
A DeviceActor (real or mock) |
device.allocate_f32(len) |
DeviceMsg::AllocateF32 → GpuBuffer |
device.copy_from_numpy(buf, np) |
H2D CopyFromHostF32 |
device.copy_to_numpy(buf) |
D2H CopyToHostF32 → numpy float32 array |
device.sgemm(a,b,c,m,n,k,...) |
cuBLAS SGEMM via BlasActor |
device.stats() |
DeviceMsg::Stats → DeviceLoad |
GpuBuffer.is_stale() |
Generation token check vs. DeviceState |
GpuRuntimeError (and subclasses) |
Typed GpuError mapping |
Every method blocks the calling thread until the underlying actor
replies (the GIL is released for the duration via py.allow_threads).
Async wrappers can be layered later via
pyo3_async_runtimes::tokio::future_into_py.
How it works
Three pieces:
- A shared tokio runtime. The first call to
System.open(...)initializes a multi-threaded scheduler; every subsequent call reuses it. Implemented insrc/runtime.rsviapyo3-async-runtimes::tokio::init. - The
_nativeextension module.src/lib.rsregistersSystem,Device,GpuBuffer, exceptions, and (feature-gated)RngGenerator/NvrtcKernel. Each Python class wraps a typedActorRef<...>from rakka-accel and converts replies viaerrors::map_gpu. - The pure-Python facade at
python/rakka_accel/__init__.py. Hides_native; documents the API; gives downstream libraries a stable import path.
See docs/python-bridge.md for the full architecture write-up.
License
Apache-2.0.
Release files for rakka-accel 0.2.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rakka_accel-0.2.9.tar.gz | 9.3 MB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| rakka_accel-0.2.9-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| rakka_accel-0.2.9-cp310-abi3-musllinux_1_2_x86_64.whl | CPython 3.10 | abi3 | Linux musl 1.2+ x86-64 | Details |
| rakka_accel-0.2.9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| rakka_accel-0.2.9-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64 | Details |
Total release size:12.8 MB
Release files / rakka_accel-0.2.9.tar.gz
| Download URL | rakka_accel-0.2.9.tar.gz |
|---|---|
| Size | 9.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3f63e6a2f6a5b5e5c52f182125413d2a82d26f13f0a0a9ed684ef4131acf4ed0
|
|
BLAKE2b-256 checksum How to use checksums |
0b71ed5b1d575ed90c2e82f57fec46fc4279249dea82aa44140afdfa946fa525
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 3, 2026.
Transparency logRelease files / rakka_accel-0.2.9-cp310-abi3-win_amd64.whl
| Download URL | rakka_accel-0.2.9-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 631.3 kB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
b02f422a88b3402f99dbd553386054095ad9d8e1c45bf0cb186316eccc350781
|
|
BLAKE2b-256 checksum How to use checksums |
d4ad33cca8ce769835a7961b798a310c24b65ed9f52426111863c0df034494a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 3, 2026.
Transparency logRelease files / rakka_accel-0.2.9-cp310-abi3-musllinux_1_2_x86_64.whl
| Download URL | rakka_accel-0.2.9-cp310-abi3-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 903.7 kB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
ce8c2dc9c2d97c30e364fcd195c97b04ccbcdd8ae8dbe38e603cc0a6120769ce
|
|
BLAKE2b-256 checksum How to use checksums |
659223a661c56e89b382d50c6d2cb38dcc139f7880d0ea8d7626c3ee619a7d44
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 3, 2026.
Transparency logRelease files / rakka_accel-0.2.9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rakka_accel-0.2.9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 688.0 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
fc2dd9ae2881cc4c936ac6bfb4cfb26f982d1a466156105c8aff112c2669db6d
|
|
BLAKE2b-256 checksum How to use checksums |
84cb88fa17b5e0ba0e5b263233e8450b648e9121fe74f9dac29b0a8e27b23d7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 3, 2026.
Transparency logRelease files / rakka_accel-0.2.9-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
| Download URL | rakka_accel-0.2.9-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.10 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b28620dd57f5e25da4989ec63c08426635a08c22f78bdab5757b72713b7f0e55
|
|
BLAKE2b-256 checksum How to use checksums |
9973eba58320d457950346163d28c13b07a51a57f7c0dee2192c8432abd5bbf5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 3, 2026.
Transparency log