Expand description
Capture-mode contract.
Library actors that participate in crate::pipeline or
crate::graph implement RecordMode so they can be driven
without registering host-callback completion. The capture caller
(a PipelineStage adapter or GraphActor) feeds an operation,
the library actor enqueues it onto the supplied stream, and the
caller manages cross-stream synchronization itself via
CudaEvents (pipeline) or graph instantiation (graph).
Capture-safe vs. unsafe: anything calling host functions
(HostFnCompletion’s cuLaunchHostFunc, tokio::spawn,
synchronous memcpy) is not capture-safe. RecordMode impls must
enqueue purely on the stream and return synchronously.
Structs§
- Blas
Recorder - Capture-mode wrapper around a
CudaBlashandle. Used bycrate::graph::GraphActorwhen it needs to record an SGEMM inside a stream-capture region. - Blas
Sgemm Op - Record-mode op for cuBLAS SGEMM. Mirrors
BlasMsg::Sgemm’s payload minus the reply channel. - FftR2C
Op - FftRecorder
- Memcpy
Op - Memcpy op (host-side
cudaMemcpyAsyncdevice-to-device on the captured stream). Capture-safe. - Memcpy
Recorder - Capture-mode wrapper for in-stream device-to-device memcpy.
- RngFill
Uniform Op - Uniform RNG fill op. Capture-safe in cuRAND when no host counter is consulted; the actor records an in-place uniform fill against the supplied buffer.
- RngRecorder
Traits§
- Record
Mode - Library-actor opt-in to capture-mode enqueue.