pub struct ReduceKernel<RA: ReduceArgs, __R: LaunchMarker> { /* private fields */ }Expand description
reduce_kernel Kernel
Implementations§
Source§impl<RA: ReduceArgs, __R: LaunchMarker> ReduceKernel<RA, __R>
impl<RA: ReduceArgs, __R: LaunchMarker> ReduceKernel<RA, __R>
pub fn new( settings: KernelSettings, client: impl Into<KernelContext>, input: <RA::Input<In, InSize> as LaunchArg>::CompilationArg, output: <RA::Output<Out, OutSize> as LaunchArg>::CompilationArg, reduce_axis: <usize as LaunchArg>::CompilationArg, out_vec_axis: <usize as LaunchArg>::CompilationArg, _in_size: usize, _out_size: usize, blueprint: ReduceBlueprint, config: ReduceOperationConfig, _input_dtype: StorageType, _output_dtype: StorageType, _acc_dtype: StorageType, ) -> Self
Trait Implementations§
Source§impl<RA: ReduceArgs, __R: LaunchMarker> KernelMetadata for ReduceKernel<RA, __R>
impl<RA: ReduceArgs, __R: LaunchMarker> KernelMetadata for ReduceKernel<RA, __R>
Source§impl<RA: ReduceArgs, __R: LaunchMarker> RudaKernel for ReduceKernel<RA, __R>
impl<RA: ReduceArgs, __R: LaunchMarker> RudaKernel for ReduceKernel<RA, __R>
Source§fn define(&self) -> KernelDefinition
fn define(&self) -> KernelDefinition
Define the kernel for compilation
Source§fn source(&self) -> Option<PrecompiledSource>
fn source(&self) -> Option<PrecompiledSource>
Target-language source instead of compiling the definition’s body.
Auto Trait Implementations§
impl<RA, __R> !RefUnwindSafe for ReduceKernel<RA, __R>
impl<RA, __R> !UnwindSafe for ReduceKernel<RA, __R>
impl<RA, __R> Freeze for ReduceKernel<RA, __R>where
<<RA as ReduceArgs>::Input<DynamicScalar<_In>, DynamicSize<_InSize>> as LaunchArg>::CompilationArg: Freeze,
<<RA as ReduceArgs>::Output<DynamicScalar<_Out>, DynamicSize<_OutSize>> as LaunchArg>::CompilationArg: Freeze,
PhantomData<fn() -> (RA, __R)>: Freeze,
impl<RA, __R> Send for ReduceKernel<RA, __R>where
<<RA as ReduceArgs>::Input<DynamicScalar<_In>, DynamicSize<_InSize>> as LaunchArg>::CompilationArg: Send,
<<RA as ReduceArgs>::Output<DynamicScalar<_Out>, DynamicSize<_OutSize>> as LaunchArg>::CompilationArg: Send,
PhantomData<fn() -> (RA, __R)>: Send,
impl<RA, __R> Sync for ReduceKernel<RA, __R>where
<<RA as ReduceArgs>::Input<DynamicScalar<_In>, DynamicSize<_InSize>> as LaunchArg>::CompilationArg: Sync,
<<RA as ReduceArgs>::Output<DynamicScalar<_Out>, DynamicSize<_OutSize>> as LaunchArg>::CompilationArg: Sync,
PhantomData<fn() -> (RA, __R)>: Sync,
impl<RA, __R> Unpin for ReduceKernel<RA, __R>where
<<RA as ReduceArgs>::Input<DynamicScalar<_In>, DynamicSize<_InSize>> as LaunchArg>::CompilationArg: Unpin,
<<RA as ReduceArgs>::Output<DynamicScalar<_Out>, DynamicSize<_OutSize>> as LaunchArg>::CompilationArg: Unpin,
PhantomData<fn() -> (RA, __R)>: Unpin,
impl<RA, __R> UnsafeUnpin for ReduceKernel<RA, __R>where
<<RA as ReduceArgs>::Input<DynamicScalar<_In>, DynamicSize<_InSize>> as LaunchArg>::CompilationArg: UnsafeUnpin,
<<RA as ReduceArgs>::Output<DynamicScalar<_Out>, DynamicSize<_OutSize>> as LaunchArg>::CompilationArg: UnsafeUnpin,
PhantomData<fn() -> (RA, __R)>: UnsafeUnpin,
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