Skip to main content

Module gpudirect

Module gpudirect 

Source
Expand description

GPUDirect Storage capability probe + passthrough helper.

NVMe → VRAM direct DMA on Linux with nvidia-fs installed + kernel 6.0+. Callers probe the capability at startup via GpuDirectCapability::probe; if present, they use encode_nvme_read_sqe to pack a 64-byte NVMe Read command that AsyncUringStream::submit_nvme_passthrough feeds into IORING_OP_URING_CMD. Bytes land in a GpuMappedBuffer::from_bar1_peer-backed region with zero host bounce.

Gated behind the uring-cmd-nvme feature - the module is compiled even without the feature so consumers can read GpuDirectCapability::probe and get a structured Disabled result instead of a link error.

Enums§

GpuDirectCapability
Result of probing the host for GPUDirect Storage support.

Constants§

NVME_CMD_READ
NVMe 0x02 Read opcode (see NVMe Base Spec 1.4, §5.15).

Functions§

encode_nvme_read_sqe
Encode a 64-byte NVMe Read command payload suitable for AsyncUringStream::submit_nvme_passthrough. Callers supply the target LBA range + the destination BAR1 peer pointer; the kernel DMAs the blocks directly into VRAM.