pub struct PreparedKernel<R: Runtime> { /* private fields */ }Expand description
A fully registered kernel invocation, not compiled or submitted yet.
Buffers, scalars and shape metadata are owned. The execution queue is fixed at preparation time. This is an opt-in building block for native graph backends, not stream capture or a CPU implementation of a GPU kernel.
Implementations§
Source§impl<R: Runtime> PreparedKernel<R>
impl<R: Runtime> PreparedKernel<R>
Sourcepub fn scalar_words(&self) -> usize
pub fn scalar_words(&self) -> usize
Number of aligned u64 words in the packed scalar prefix. Backend graph updates must keep the remaining (shape/stride/length) metadata unchanged.
Sourcepub fn into_parts(
self,
) -> (Box<dyn RudaTask<R::Compiler>>, RudaCount, KernelArguments, ComputeClient<R>)
pub fn into_parts( self, ) -> (Box<dyn RudaTask<R::Compiler>>, RudaCount, KernelArguments, ComputeClient<R>)
Consume the prepared invocation. Backends must honor the client’s device and queue, retain arguments, and validate any restrictions before launch.
Auto Trait Implementations§
impl<R> !RefUnwindSafe for PreparedKernel<R>
impl<R> !UnwindSafe for PreparedKernel<R>
impl<R> Freeze for PreparedKernel<R>
impl<R> Send for PreparedKernel<R>
impl<R> Sync for PreparedKernel<R>
impl<R> Unpin for PreparedKernel<R>
impl<R> UnsafeUnpin for PreparedKernel<R>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more