j2k-cuda-runtime 0.7.1

CUDA codec engine and Driver API runtime for j2k device adapters
Documentation

j2k-cuda-runtime

CUDA codec engine and Driver API runtime crate for J2K CUDA adapters.

It owns J2K CUDA kernel modules and the host-side launch logic for CUDA codec stages, plus allocation, copy, stream, timing, and pooled resource helpers used by the adapter crates.

This crate is the shared CUDA engine layer, but not proof of NVIDIA performance. CUDA benchmark claims require self-hosted benchmark evidence.

Launch geometry policy

Host launch geometry is validated before the CUDA Driver API is called. Grid axes must be nonzero and no larger than 2^31 - 1 for x or 65,535 for y/z; block axes must be nonzero and no larger than 1,024 for x/y or 64 for z, with at most 1,024 threads per block. Safe operations also preflight caller-derived geometry before upload or output allocation where possible.

These are the documented limits for the modern CUDA compute capabilities this crate supports. Device-specific acceptance still belongs to the Driver API and must be verified on NVIDIA hardware. See NVIDIA's compute-capability limits and Driver API device attributes.

Resource completion policy

Successful CUDA submission is not treated as completion. Pooled resources used by asynchronous work stay behind a reuse guard until a proven same-context completion point. A safe API that returns an initialized pooled buffer after an otherwise unobserved asynchronous memset synchronizes before returning it.

Links