pub struct Cpu;
Expand description

The CPU device

Implementations

vector matrix multiply c += a * b

vector matrix multiply c += a * trans(b)

vector vector

Trait Implementations

Allocates using alloc_zeroed.

Allocate a new T and then store f applied to t in the new T. Uses ForEachElement::foreach_mr.
Allocate a new T and then store f applied to t in the new T. Uses ForEachElement::foreach_mr.
Allocate a new T and then store f applied to t in the new T. Uses ForEachElement::foreach_mr.
Allocate a new T and then store f applied to t in the new T. Uses ForEachElement::foreach_mr.
Allocate a new T and then store f applied to t in the new T. Uses ForEachElement::foreach_mr.
Forward operation that modifies the out image.
Backward operation that modifies the gradients of img, weight, and bias.
Forward operation that modifies the out image.
Backward operation that modifies the gradients of img, weight, and bias.
Forward operation that modifies the out image.
Backward operation that modifies the gradients of img, weight, and bias.
Forward operation that modifies the out image.
Backward operation that modifies the gradients of img, weight, and bias.
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
The smaller type.
Reduces T into Self::Reduced with accumulator A without resetting the values in r.
Broadcasts Self::Reduced into T with accumulator A without resetting the values in t. Read more
Fills r with Accumulator::INIT before reducing.
Fills t with Accumulator::INIT before broadcasting.
Allocates Self::Reduced then calls DeviceReduce::reduce_into()
Mutate elements of a by applying f to all elements of a.
Mutate elements of a and b by applying f to all elements of (a, b). mm stands for mut mut Read more
Mutate elements of a by applying f to all elements of (a, b). mr stands for mut ref Read more
Mutate elements of a, b, and c by applying f to all elements of (a, b, c). mmm stands for mut mut mut Read more
Mutate elements of a by applying f to all elements of (a, b, c). mrr stands for mut ref ref Read more
Mutate elements of a by applying f to all elements of a.
Mutate elements of a and b by applying f to all elements of (a, b). mm stands for mut mut Read more
Mutate elements of a by applying f to all elements of (a, b). mr stands for mut ref Read more
Mutate elements of a, b, and c by applying f to all elements of (a, b, c). mmm stands for mut mut mut Read more
Mutate elements of a by applying f to all elements of (a, b, c). mrr stands for mut ref ref Read more

Broadcast c BATCH times.

Broadcast c BATCH times.

Broadcast c BATCH times.

Broadcast c BATCH times.

Broadcast b BATCH times.

Broadcast b BATCH times.

Broadcast b BATCH times.

Broadcast b BATCH times.

Matmul

Matmul, a is transposed.

Matmul, b is transposed

Matmul, a and c are transposed

Batched matmul

Batched matmul

Batched matmul

Batched matmul

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.