Skip to main content

Module cuda

Module cuda 

Source
Expand description

The CUDA backend: one engine over t4a-cuda-runtime and the t4a-cuda-kernels catalogue (issue #2208).

One [CudaRuntime] per engine owns the stream, the allocation domain, transfers and pending handles; every operation reaches the kernel catalogue through the engine’s typed dispatchers, and the vendor libraries through [raw::Session].

§Examples

use tenferro_gpu::cuda::{gpu_available, CudaDeviceId, CudaEngine};

if gpu_available() {
    let engine = CudaEngine::open(CudaDeviceId::from_ordinal(0))?;
    let _ = engine.runtime();
}

Re-exports§

pub use crate::gpu;
pub use runtime_adapter::cuda_runtime_engine_registration;
pub use ::cudarc;

Modules§

raw
The owner-scoped raw session an extension crate runs its vendor calls in.
runtime_adapter
The new engine’s runtime registration: the preparation witness and the ingress contract.

Structs§

CudaComputeCapability
CUDA compute capability major.minor (e.g. 9.0 for Hopper-class parts).
CudaDeviceId
Provider-qualified identity of a CUDA device ordinal.
CudaDeviceInfo
Immutable metadata describing one CUDA device.
CudaDeviceUuid
Stable physical or MIG device identity as a 16-byte UUID.

Enums§

CudaDeviceError
Structured failures from CUDA device discovery and initialization.
GpuExtensionCapability
Capability a GPU extension may query before using a provider-specific path.

Functions§

cuda_capabilities
Return the CUDA backend operation capability descriptor table.
cuda_devices
Discover CUDA devices visible to the current process.