Struct LinearGradientBatchArgs

Source
pub struct LinearGradientBatchArgs<'a, T, const NI: usize, const NO: usize>
where T: DataTypeInfo + Debug + Default + UnitValue<T>,
{ pub output: CudaTensor2dPtr<T, NI, NO>, /* private fields */ }
Expand description

Defines the list that is passed to the cuda kernel function as arguments for the calculation of the amount of update of the linear layer weights during the mini-batch.

Fields§

§output: CudaTensor2dPtr<T, NI, NO>

Implementations§

Source§

impl<'a, T, const NI: usize, const NO: usize> LinearGradientBatchArgs<'a, T, NI, NO>
where T: DataTypeInfo + Debug + Default + UnitValue<T>,

Create an instance of an object representing the list of arguments s for calculating the amount of updates to the linear layer weights during a mini-batch run.

Source

pub fn new( loss: &'a CudaVecView<'a, T, CudaTensor1dPtr<T, NO>>, input: &'a CudaVecView<'a, T, CudaTensor1dPtr<T, NI>>, output: CudaTensor2dPtr<T, NI, NO>, batch_size: usize, ) -> LinearGradientBatchArgs<'a, T, NI, NO>

Create a LinearGradientBatchArgs instance

§Arguments
  • loss - loss
  • input - input
  • output - output (All elements must be initialized to zero.)
  • batch_len - batch_count

Trait Implementations§

Source§

impl<'a, T, const NI: usize, const NO: usize> KernelArgs for LinearGradientBatchArgs<'a, T, NI, NO>
where T: DataTypeInfo + Debug + Default + UnitValue<T>,

Source§

fn as_vec(&mut self) -> Vec<&mut dyn AsKernelPtr>

Returns a Vec<&mut dyn AsMutKernelPtr> of the type implementing AsMutKernelPtr, which is converted to a data type that can be passed to the cuda kernel in subsequent processing.

Auto Trait Implementations§

§

impl<'a, T, const NI: usize, const NO: usize> Freeze for LinearGradientBatchArgs<'a, T, NI, NO>

§

impl<'a, T, const NI: usize, const NO: usize> RefUnwindSafe for LinearGradientBatchArgs<'a, T, NI, NO>
where T: RefUnwindSafe,

§

impl<'a, T, const NI: usize, const NO: usize> !Send for LinearGradientBatchArgs<'a, T, NI, NO>

§

impl<'a, T, const NI: usize, const NO: usize> !Sync for LinearGradientBatchArgs<'a, T, NI, NO>

§

impl<'a, T, const NI: usize, const NO: usize> Unpin for LinearGradientBatchArgs<'a, T, NI, NO>

§

impl<'a, T, const NI: usize, const NO: usize> UnwindSafe for LinearGradientBatchArgs<'a, T, NI, NO>
where T: RefUnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.