pub struct Flex {}Expand description
The Flex backend, a fast, portable CPU backend for Burn.
The E and I type parameters exist purely to match the shape of other Burn
backends (e.g. NdArray<E, I, Q>) so Flex slots into burn-dispatch’s
generic dispatch macros. The body of Flex uses runtime DType dispatch, so
both parameters are phantom and unused at runtime.
§Limitations of the phantom generics
The Backend impl is provided only for the default instantiation
Flex<f32, i32>. Writing Flex (with no arguments) resolves to the default
and works exactly as before. Writing Flex<f64, i64> or any other non-default
combination is a valid Rust type but will not satisfy trait bounds requiring
Backend, producing errors like:
the trait bound `Flex<f64, i64>: Backend` is not satisfiedThis is a deliberate compromise for the initial migration: making Flex
generic over element types at the trait-impl level is a follow-up that would
require rewriting all impl FooOps<Flex> for Flex blocks plus internal
Flex::method() calls (tracked in
#4762). Until then, treat
the generic parameters as opaque shape placeholders; real element-type
selection happens at runtime via DType.
The bound is locked in by a compile-fail doctest so that if someone later
makes the Backend impl generic over E/I, this documentation gets
flagged as out of date:
use burn_backend::Backend;
use burn_flex::Flex;
fn requires_backend<B: Backend>() {}
requires_backend::<Flex<f64, i64>>();Trait Implementations§
Source§impl ActivationOps<Flex> for Flex
impl ActivationOps<Flex> for Flex
Source§fn relu(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn relu(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn relu_backward(
output: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn relu_backward( output: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn leaky_relu(
tensor: FloatTensor<Flex>,
negative_slope: Scalar,
) -> FloatTensor<Flex>
fn leaky_relu( tensor: FloatTensor<Flex>, negative_slope: Scalar, ) -> FloatTensor<Flex>
Source§fn prelu(
tensor: FloatTensor<Flex>,
alpha: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn prelu( tensor: FloatTensor<Flex>, alpha: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn gelu(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn gelu(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn gelu_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn gelu_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn sigmoid(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn sigmoid(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn sigmoid_backward(
output: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn sigmoid_backward( output: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn hard_sigmoid(
tensor: FloatTensor<Flex>,
alpha: Scalar,
beta: Scalar,
) -> FloatTensor<Flex>
fn hard_sigmoid( tensor: FloatTensor<Flex>, alpha: Scalar, beta: Scalar, ) -> FloatTensor<Flex>
Source§fn log_sigmoid(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn log_sigmoid(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn log_sigmoid_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn log_sigmoid_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn softmax(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn softmax(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn log_softmax(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn log_softmax( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn softmin(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn softmin( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§impl Backend for Flex
impl Backend for Flex
Source§fn seed(_device: &Self::Device, seed: u64)
fn seed(_device: &Self::Device, seed: u64)
Source§fn device_count(_type_id: u16) -> usize
fn device_count(_type_id: u16) -> usize
device is a reference device used to determine the underlying backend that should be queried.
A CUDA device will return all devices available to CUDA, a Vulkan device will return all
devices available to Vulkan, etc.Source§fn dtype_usage(_device: &Self::Device, dtype: DType) -> DTypeUsageSet
fn dtype_usage(_device: &Self::Device, dtype: DType) -> DTypeUsageSet
Source§fn ad_enabled(_device: &Self::Device) -> bool
fn ad_enabled(_device: &Self::Device) -> bool
Source§fn memory_persistent_allocations<Output, Input, Func>(
device: &Self::Device,
input: Input,
func: Func,
) -> Output
fn memory_persistent_allocations<Output, Input, Func>( device: &Self::Device, input: Input, func: Func, ) -> Output
Source§fn memory_cleanup(device: &Self::Device)
fn memory_cleanup(device: &Self::Device)
Source§fn sync(_device: &Self::Device) -> Result<(), ExecutionError>
fn sync(_device: &Self::Device) -> Result<(), ExecutionError>
Source§fn graph_prepare(_device: &Self::Device) -> Result<(), ExecutionError>
fn graph_prepare(_device: &Self::Device) -> Result<(), ExecutionError>
device for an upcoming graph capture: route allocations into a
stable pool so every buffer allocated before graph_stop_capture can
be pinned. Call before the warmup run. No-op by default. Read moreSource§fn graph_start_capture(_device: &Self::Device) -> Result<(), ExecutionError>
fn graph_start_capture(_device: &Self::Device) -> Result<(), ExecutionError>
device into a graph (see
graph_stop_capture). Errors on backends
without hardware graph support, so callers fall back to re-running.Source§fn graph_stop_capture(
_device: &Self::Device,
) -> Result<Self::GraphPrimitive, ExecutionError>
fn graph_stop_capture( _device: &Self::Device, ) -> Result<Self::GraphPrimitive, ExecutionError>
graph_replay.Source§unsafe fn graph_replay(
_device: &Self::Device,
_graph: &Self::GraphPrimitive,
) -> Result<(), ExecutionError>
unsafe fn graph_replay( _device: &Self::Device, _graph: &Self::GraphPrimitive, ) -> Result<(), ExecutionError>
Source§impl BackendIr for Flex
impl BackendIr for Flex
Source§type Handle = HandleKind<Flex>
type Handle = HandleKind<Flex>
Source§fn float_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
fn float_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
Source§fn int_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
fn int_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
Source§fn bool_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
fn bool_tensor(handle: TensorHandle<Self::Handle>) -> FlexTensor
Source§fn quantized_tensor(handle: TensorHandle<Self::Handle>) -> FlexQTensor
fn quantized_tensor(handle: TensorHandle<Self::Handle>) -> FlexQTensor
Source§fn float_tensor_handle(tensor: FlexTensor) -> Self::Handle
fn float_tensor_handle(tensor: FlexTensor) -> Self::Handle
Source§fn int_tensor_handle(tensor: FlexTensor) -> Self::Handle
fn int_tensor_handle(tensor: FlexTensor) -> Self::Handle
Source§fn bool_tensor_handle(tensor: FlexTensor) -> Self::Handle
fn bool_tensor_handle(tensor: FlexTensor) -> Self::Handle
Source§fn quantized_tensor_handle(tensor: FlexQTensor) -> Self::Handle
fn quantized_tensor_handle(tensor: FlexQTensor) -> Self::Handle
Source§impl BackendTypes for Flex
impl BackendTypes for Flex
Source§type Device = FlexDevice
type Device = FlexDevice
Source§type FloatTensorPrimitive = FlexTensor
type FloatTensorPrimitive = FlexTensor
Source§type IntTensorPrimitive = FlexTensor
type IntTensorPrimitive = FlexTensor
Source§type BoolTensorPrimitive = FlexTensor
type BoolTensorPrimitive = FlexTensor
Source§type QuantizedTensorPrimitive = FlexQTensor
type QuantizedTensorPrimitive = FlexQTensor
Source§type GraphPrimitive = GraphUnsupported
type GraphPrimitive = GraphUnsupported
Backend::graph_stop_capture and
consumed by Backend::graph_replay: a backend-owned recording of a
launch sequence that replays as a single dispatch. Read moreSource§impl BoolTensorOps<Flex> for Flex
impl BoolTensorOps<Flex> for Flex
Source§fn bool_from_data(data: TensorData, _device: &Device<Flex>) -> BoolTensor<Flex>
fn bool_from_data(data: TensorData, _device: &Device<Flex>) -> BoolTensor<Flex>
Source§async fn bool_into_data(
tensor: BoolTensor<Flex>,
) -> Result<TensorData, ExecutionError>
async fn bool_into_data( tensor: BoolTensor<Flex>, ) -> Result<TensorData, ExecutionError>
Source§fn bool_to_device(
tensor: BoolTensor<Flex>,
_device: &Device<Flex>,
) -> BoolTensor<Flex>
fn bool_to_device( tensor: BoolTensor<Flex>, _device: &Device<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_cat(tensors: Vec<BoolTensor<Flex>>, dim: usize) -> BoolTensor<Flex>
fn bool_cat(tensors: Vec<BoolTensor<Flex>>, dim: usize) -> BoolTensor<Flex>
Source§fn bool_reshape(tensor: BoolTensor<Flex>, shape: Shape) -> BoolTensor<Flex>
fn bool_reshape(tensor: BoolTensor<Flex>, shape: Shape) -> BoolTensor<Flex>
Source§fn bool_slice(tensor: BoolTensor<Flex>, slices: &[Slice]) -> BoolTensor<Flex>
fn bool_slice(tensor: BoolTensor<Flex>, slices: &[Slice]) -> BoolTensor<Flex>
Source§fn bool_empty(
shape: Shape,
_device: &Device<Flex>,
dtype: BoolDType,
) -> BoolTensor<Flex>
fn bool_empty( shape: Shape, _device: &Device<Flex>, dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn bool_slice_assign(
tensor: BoolTensor<Flex>,
slices: &[Slice],
value: BoolTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_slice_assign( tensor: BoolTensor<Flex>, slices: &[Slice], value: BoolTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_into_int(
tensor: BoolTensor<Flex>,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn bool_into_int( tensor: BoolTensor<Flex>, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn bool_into_float(
tensor: BoolTensor<Flex>,
out_dtype: FloatDType,
) -> FloatTensor<Flex>
fn bool_into_float( tensor: BoolTensor<Flex>, out_dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn bool_swap_dims(
tensor: BoolTensor<Flex>,
dim1: usize,
dim2: usize,
) -> BoolTensor<Flex>
fn bool_swap_dims( tensor: BoolTensor<Flex>, dim1: usize, dim2: usize, ) -> BoolTensor<Flex>
Source§fn bool_permute(tensor: BoolTensor<Flex>, axes: &[usize]) -> BoolTensor<Flex>
fn bool_permute(tensor: BoolTensor<Flex>, axes: &[usize]) -> BoolTensor<Flex>
Source§fn bool_flip(tensor: BoolTensor<Flex>, axes: &[usize]) -> BoolTensor<Flex>
fn bool_flip(tensor: BoolTensor<Flex>, axes: &[usize]) -> BoolTensor<Flex>
Source§fn bool_equal(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_equal(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
Source§fn bool_not(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_not(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
Source§fn bool_and(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_and(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
&&) operation on two boolean tensors. Read moreSource§fn bool_or(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_or(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
||) operation on two boolean tensors. Read moreSource§fn bool_xor(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_xor(lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>) -> BoolTensor<Flex>
Source§fn bool_expand(tensor: BoolTensor<Flex>, shape: Shape) -> BoolTensor<Flex>
fn bool_expand(tensor: BoolTensor<Flex>, shape: Shape) -> BoolTensor<Flex>
tensor to the given shape.Source§fn bool_zeros(
shape: Shape,
device: &Device<Flex>,
dtype: BoolDType,
) -> BoolTensor<Flex>
fn bool_zeros( shape: Shape, device: &Device<Flex>, dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn bool_ones(
shape: Shape,
_device: &Device<Flex>,
dtype: BoolDType,
) -> BoolTensor<Flex>
fn bool_ones( shape: Shape, _device: &Device<Flex>, dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn bool_mask_where(
tensor: BoolTensor<Flex>,
mask: BoolTensor<Flex>,
value: BoolTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_mask_where( tensor: BoolTensor<Flex>, mask: BoolTensor<Flex>, value: BoolTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_mask_fill(
tensor: BoolTensor<Flex>,
mask: BoolTensor<Flex>,
value: Scalar,
) -> BoolTensor<Flex>
fn bool_mask_fill( tensor: BoolTensor<Flex>, mask: BoolTensor<Flex>, value: Scalar, ) -> BoolTensor<Flex>
Source§fn bool_gather(
dim: usize,
tensor: BoolTensor<Flex>,
indices: IntTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_gather( dim: usize, tensor: BoolTensor<Flex>, indices: IntTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_scatter_or(
dim: usize,
tensor: BoolTensor<Flex>,
indices: IntTensor<Flex>,
value: BoolTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_scatter_or( dim: usize, tensor: BoolTensor<Flex>, indices: IntTensor<Flex>, value: BoolTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_equal_elem(lhs: BoolTensor<Flex>, rhs: Scalar) -> BoolTensor<Flex>
fn bool_equal_elem(lhs: BoolTensor<Flex>, rhs: Scalar) -> BoolTensor<Flex>
Source§fn bool_unfold(
tensor: BoolTensor<Flex>,
dim: usize,
size: usize,
step: usize,
) -> BoolTensor<Flex>
fn bool_unfold( tensor: BoolTensor<Flex>, dim: usize, size: usize, step: usize, ) -> BoolTensor<Flex>
Source§fn bool_not_equal(
lhs: BoolTensor<Flex>,
rhs: BoolTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_not_equal( lhs: BoolTensor<Flex>, rhs: BoolTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_not_equal_elem(lhs: BoolTensor<Flex>, rhs: Scalar) -> BoolTensor<Flex>
fn bool_not_equal_elem(lhs: BoolTensor<Flex>, rhs: Scalar) -> BoolTensor<Flex>
Source§fn bool_any(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_any(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
tensor evaluates to True. Read moreSource§fn bool_any_dim(tensor: BoolTensor<Flex>, dim: usize) -> BoolTensor<Flex>
fn bool_any_dim(tensor: BoolTensor<Flex>, dim: usize) -> BoolTensor<Flex>
Source§fn bool_all(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_all(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
tensor evaluate to True. Read moreSource§fn bool_all_dim(tensor: BoolTensor<Flex>, dim: usize) -> BoolTensor<Flex>
fn bool_all_dim(tensor: BoolTensor<Flex>, dim: usize) -> BoolTensor<Flex>
Source§fn bool_select(
tensor: BoolTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_select( tensor: BoolTensor<Flex>, dim: usize, indices: IntTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_select_or(
tensor: BoolTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
value: BoolTensor<Flex>,
) -> BoolTensor<Flex>
fn bool_select_or( tensor: BoolTensor<Flex>, dim: usize, indices: IntTensor<Flex>, value: BoolTensor<Flex>, ) -> BoolTensor<Flex>
Source§fn bool_transpose(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
fn bool_transpose(tensor: BoolTensor<Flex>) -> BoolTensor<Flex>
Source§fn bool_repeat_dim(
tensor: BoolTensor<Flex>,
dim: usize,
times: usize,
) -> BoolTensor<Flex>
fn bool_repeat_dim( tensor: BoolTensor<Flex>, dim: usize, times: usize, ) -> BoolTensor<Flex>
Source§async fn bool_argwhere(
tensor: BoolTensor<Flex>,
out_dtype: IntDType,
) -> IntTensor<Flex>
async fn bool_argwhere( tensor: BoolTensor<Flex>, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn bool_mask_select(
tensor: <B as BackendTypes>::BoolTensorPrimitive,
mask: <B as BackendTypes>::BoolTensorPrimitive,
) -> impl Future<Output = <B as BackendTypes>::BoolTensorPrimitive> + Send + 'static
fn bool_mask_select( tensor: <B as BackendTypes>::BoolTensorPrimitive, mask: <B as BackendTypes>::BoolTensorPrimitive, ) -> impl Future<Output = <B as BackendTypes>::BoolTensorPrimitive> + Send + 'static
impl Copy for Flex
Source§impl DistributedOps<Flex> for Flex
impl DistributedOps<Flex> for Flex
Source§fn start_communication_server(
devices: &[<B as BackendTypes>::Device],
config: DistributedConfig,
)
fn start_communication_server( devices: &[<B as BackendTypes>::Device], config: DistributedConfig, )
Source§fn close_communication_server(_device: &<B as BackendTypes>::Device)
fn close_communication_server(_device: &<B as BackendTypes>::Device)
Source§fn register_sync_parameters(
_device: &<B as BackendTypes>::Device,
distributed_params: Vec<DistributedParams>,
)
fn register_sync_parameters( _device: &<B as BackendTypes>::Device, distributed_params: Vec<DistributedParams>, )
Source§fn submit_sync_collective(device: &<B as BackendTypes>::Device)
fn submit_sync_collective(device: &<B as BackendTypes>::Device)
Source§fn submit_gradient_sync(
tensor: TensorRef<B>,
distributed_params: DistributedParams,
)
fn submit_gradient_sync( tensor: TensorRef<B>, distributed_params: DistributedParams, )
Source§fn all_reduce(
_tensor: <B as BackendTypes>::FloatTensorPrimitive,
_op: ReduceOperation,
_device_ids: Vec<DeviceId>,
) -> CollectiveTensor<B>
fn all_reduce( _tensor: <B as BackendTypes>::FloatTensorPrimitive, _op: ReduceOperation, _device_ids: Vec<DeviceId>, ) -> CollectiveTensor<B>
Source§fn sync_collective(_device: &<B as BackendTypes>::Device)
fn sync_collective(_device: &<B as BackendTypes>::Device)
Source§unsafe fn comm_device(tensor: &TensorRef<B>) -> <B as BackendTypes>::Device
unsafe fn comm_device(tensor: &TensorRef<B>) -> <B as BackendTypes>::Device
Source§unsafe fn float_from_ref(
tensor: &TensorRef<B>,
) -> <B as BackendTypes>::FloatTensorPrimitive
unsafe fn float_from_ref( tensor: &TensorRef<B>, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§impl FloatTensorOps<Flex> for Flex
impl FloatTensorOps<Flex> for Flex
Source§fn float_from_data(
data: TensorData,
_device: &Device<Flex>,
) -> FloatTensor<Flex>
fn float_from_data( data: TensorData, _device: &Device<Flex>, ) -> FloatTensor<Flex>
Source§fn float_random(
shape: Shape,
distribution: Distribution,
_device: &Device<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn float_random( shape: Shape, distribution: Distribution, _device: &Device<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§async fn float_into_data(
tensor: FloatTensor<Flex>,
) -> Result<TensorData, ExecutionError>
async fn float_into_data( tensor: FloatTensor<Flex>, ) -> Result<TensorData, ExecutionError>
Source§fn float_to_device(
tensor: FloatTensor<Flex>,
_device: &Device<Flex>,
) -> FloatTensor<Flex>
fn float_to_device( tensor: FloatTensor<Flex>, _device: &Device<Flex>, ) -> FloatTensor<Flex>
Source§fn float_detach(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_detach(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_into_int(
tensor: FloatTensor<Flex>,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn float_into_int( tensor: FloatTensor<Flex>, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn float_empty(
shape: Shape,
_device: &Device<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn float_empty( shape: Shape, _device: &Device<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn float_add(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_add( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_add_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
fn float_add_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
Source§fn float_sub(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_sub( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_sub_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
fn float_sub_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
Source§fn float_mul(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_mul( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_mul_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
fn float_mul_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
Source§fn float_div(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_div( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_div_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
fn float_div_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
Source§fn float_remainder(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_remainder( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_remainder_scalar(
lhs: FloatTensor<Flex>,
rhs: Scalar,
) -> FloatTensor<Flex>
fn float_remainder_scalar( lhs: FloatTensor<Flex>, rhs: Scalar, ) -> FloatTensor<Flex>
Source§fn float_matmul(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_matmul( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_cross(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
dim: usize,
) -> FloatTensor<Flex>
fn float_cross( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, dim: usize, ) -> FloatTensor<Flex>
Source§fn float_recip(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_recip(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_swap_dims(
tensor: FloatTensor<Flex>,
dim1: usize,
dim2: usize,
) -> FloatTensor<Flex>
fn float_swap_dims( tensor: FloatTensor<Flex>, dim1: usize, dim2: usize, ) -> FloatTensor<Flex>
Source§fn float_permute(tensor: FloatTensor<Flex>, axes: &[usize]) -> FloatTensor<Flex>
fn float_permute(tensor: FloatTensor<Flex>, axes: &[usize]) -> FloatTensor<Flex>
Source§fn float_flip(tensor: FloatTensor<Flex>, axes: &[usize]) -> FloatTensor<Flex>
fn float_flip(tensor: FloatTensor<Flex>, axes: &[usize]) -> FloatTensor<Flex>
Source§fn float_cat(tensors: Vec<FloatTensor<Flex>>, dim: usize) -> FloatTensor<Flex>
fn float_cat(tensors: Vec<FloatTensor<Flex>>, dim: usize) -> FloatTensor<Flex>
Source§fn float_reshape(tensor: FloatTensor<Flex>, shape: Shape) -> FloatTensor<Flex>
fn float_reshape(tensor: FloatTensor<Flex>, shape: Shape) -> FloatTensor<Flex>
Source§fn float_gather(
dim: usize,
tensor: FloatTensor<Flex>,
indices: IntTensor<Flex>,
) -> FloatTensor<Flex>
fn float_gather( dim: usize, tensor: FloatTensor<Flex>, indices: IntTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_scatter_add(
dim: usize,
tensor: FloatTensor<Flex>,
indices: IntTensor<Flex>,
value: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_scatter_add( dim: usize, tensor: FloatTensor<Flex>, indices: IntTensor<Flex>, value: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_scatter_nd(
data: FloatTensor<Flex>,
indices: IntTensor<Flex>,
values: FloatTensor<Flex>,
reduction: IndexingUpdateOp,
) -> FloatTensor<Flex>
fn float_scatter_nd( data: FloatTensor<Flex>, indices: IntTensor<Flex>, values: FloatTensor<Flex>, reduction: IndexingUpdateOp, ) -> FloatTensor<Flex>
Source§fn float_gather_nd(
data: FloatTensor<Flex>,
indices: IntTensor<Flex>,
) -> FloatTensor<Flex>
fn float_gather_nd( data: FloatTensor<Flex>, indices: IntTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_select(
tensor: FloatTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
) -> FloatTensor<Flex>
fn float_select( tensor: FloatTensor<Flex>, dim: usize, indices: IntTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_select_add(
tensor: FloatTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
value: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_select_add( tensor: FloatTensor<Flex>, dim: usize, indices: IntTensor<Flex>, value: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_slice(tensor: FloatTensor<Flex>, slices: &[Slice]) -> FloatTensor<Flex>
fn float_slice(tensor: FloatTensor<Flex>, slices: &[Slice]) -> FloatTensor<Flex>
Source§fn float_slice_assign(
tensor: FloatTensor<Flex>,
slices: &[Slice],
value: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_slice_assign( tensor: FloatTensor<Flex>, slices: &[Slice], value: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_mask_where(
tensor: FloatTensor<Flex>,
mask: BoolTensor<Flex>,
value: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_mask_where( tensor: FloatTensor<Flex>, mask: BoolTensor<Flex>, value: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_mask_fill(
tensor: FloatTensor<Flex>,
mask: BoolTensor<Flex>,
value: Scalar,
) -> FloatTensor<Flex>
fn float_mask_fill( tensor: FloatTensor<Flex>, mask: BoolTensor<Flex>, value: Scalar, ) -> FloatTensor<Flex>
Source§fn float_equal(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_equal( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_equal_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_equal_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_greater(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_greater( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_greater_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_greater_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_greater_equal(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_greater_equal( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_greater_equal_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_greater_equal_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_lower(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_lower( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_lower_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_lower_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_lower_equal(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_lower_equal( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_lower_equal_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_lower_equal_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_not_equal(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_not_equal( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_not_equal_elem(
lhs: FloatTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_not_equal_elem( lhs: FloatTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_neg(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_neg(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_clamp(
tensor: FloatTensor<Flex>,
min: Scalar,
max: Scalar,
) -> FloatTensor<Flex>
fn float_clamp( tensor: FloatTensor<Flex>, min: Scalar, max: Scalar, ) -> FloatTensor<Flex>
Source§fn float_clamp_min(tensor: FloatTensor<Flex>, min: Scalar) -> FloatTensor<Flex>
fn float_clamp_min(tensor: FloatTensor<Flex>, min: Scalar) -> FloatTensor<Flex>
Source§fn float_clamp_max(tensor: FloatTensor<Flex>, max: Scalar) -> FloatTensor<Flex>
fn float_clamp_max(tensor: FloatTensor<Flex>, max: Scalar) -> FloatTensor<Flex>
Source§fn float_sign(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_sign(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
tensor. Read moreSource§fn float_mean(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_mean(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_max(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_max(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_max_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_max_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_min(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_min(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_min_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_min_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_max_dim_with_indices(
tensor: FloatTensor<Flex>,
dim: usize,
indices_dtype: IntDType,
) -> (FloatTensor<Flex>, IntTensor<Flex>)
fn float_max_dim_with_indices( tensor: FloatTensor<Flex>, dim: usize, indices_dtype: IntDType, ) -> (FloatTensor<Flex>, IntTensor<Flex>)
Source§fn float_min_dim_with_indices(
tensor: FloatTensor<Flex>,
dim: usize,
indices_dtype: IntDType,
) -> (FloatTensor<Flex>, IntTensor<Flex>)
fn float_min_dim_with_indices( tensor: FloatTensor<Flex>, dim: usize, indices_dtype: IntDType, ) -> (FloatTensor<Flex>, IntTensor<Flex>)
Source§fn float_any(
tensor: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_any( tensor: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
tensor evaluates to True. Read moreSource§fn float_any_dim(
tensor: FloatTensor<Flex>,
dim: usize,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_any_dim( tensor: FloatTensor<Flex>, dim: usize, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_all(
tensor: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_all( tensor: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
tensor evaluate to True. Read moreSource§fn float_all_dim(
tensor: FloatTensor<Flex>,
dim: usize,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_all_dim( tensor: FloatTensor<Flex>, dim: usize, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_sum(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_sum(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_sum_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_sum_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_mean_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_mean_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_prod(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_prod(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_prod_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_prod_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_cumsum(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_cumsum(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_cumprod(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_cumprod(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_cummin(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_cummin(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_cummax(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_cummax(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_cast(tensor: FloatTensor<Flex>, dtype: FloatDType) -> FloatTensor<Flex>
fn float_cast(tensor: FloatTensor<Flex>, dtype: FloatDType) -> FloatTensor<Flex>
Source§fn float_exp(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_exp(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_log(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_log(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_log1p(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_log1p(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_powf(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_powf( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_powf_scalar_impl(
tensor: FloatTensor<Flex>,
value: Scalar,
) -> FloatTensor<Flex>
fn float_powf_scalar_impl( tensor: FloatTensor<Flex>, value: Scalar, ) -> FloatTensor<Flex>
value. Read moreSource§fn float_sqrt(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_sqrt(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_abs(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_abs(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_cos(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_cos(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_sin(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_sin(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_tan(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_tan(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_cosh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_cosh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_sinh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_sinh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_tanh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_tanh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_acos(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_acos(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_acosh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_acosh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_asin(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_asin(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_asinh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_asinh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_atan(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_atan(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_atanh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_atanh(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_atan2(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_atan2( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_round(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_round(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_floor(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_floor(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_ceil(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_ceil(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_trunc(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_trunc(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_erf(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_erf(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_argmax(
tensor: FloatTensor<Flex>,
dim: usize,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn float_argmax( tensor: FloatTensor<Flex>, dim: usize, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn float_argmin(
tensor: FloatTensor<Flex>,
dim: usize,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn float_argmin( tensor: FloatTensor<Flex>, dim: usize, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn float_expand(tensor: FloatTensor<Flex>, shape: Shape) -> FloatTensor<Flex>
fn float_expand(tensor: FloatTensor<Flex>, shape: Shape) -> FloatTensor<Flex>
tensor to the given shape.Source§fn float_unfold(
tensor: FloatTensor<Flex>,
dim: usize,
size: usize,
step: usize,
) -> FloatTensor<Flex>
fn float_unfold( tensor: FloatTensor<Flex>, dim: usize, size: usize, step: usize, ) -> FloatTensor<Flex>
Source§fn float_grid_sample_2d(
tensor: FloatTensor<Flex>,
grid: FloatTensor<Flex>,
options: GridSampleOptions,
) -> FloatTensor<Flex>
fn float_grid_sample_2d( tensor: FloatTensor<Flex>, grid: FloatTensor<Flex>, options: GridSampleOptions, ) -> FloatTensor<Flex>
Source§fn float_zeros(
shape: Shape,
_device: &Device<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn float_zeros( shape: Shape, _device: &Device<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn float_ones(
shape: Shape,
_device: &Device<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn float_ones( shape: Shape, _device: &Device<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn float_full(
shape: Shape,
fill_value: Scalar,
_device: &Device<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn float_full( shape: Shape, fill_value: Scalar, _device: &Device<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn float_transpose(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_transpose(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_repeat_dim(
tensor: FloatTensor<Flex>,
dim: usize,
times: usize,
) -> FloatTensor<Flex>
fn float_repeat_dim( tensor: FloatTensor<Flex>, dim: usize, times: usize, ) -> FloatTensor<Flex>
Source§fn float_sort(
tensor: FloatTensor<Flex>,
dim: usize,
descending: bool,
) -> FloatTensor<Flex>
fn float_sort( tensor: FloatTensor<Flex>, dim: usize, descending: bool, ) -> FloatTensor<Flex>
tensor by value in along a given dimension. Read moreSource§fn float_sort_with_indices(
tensor: FloatTensor<Flex>,
dim: usize,
descending: bool,
indices_dtype: IntDType,
) -> (FloatTensor<Flex>, IntTensor<Flex>)
fn float_sort_with_indices( tensor: FloatTensor<Flex>, dim: usize, descending: bool, indices_dtype: IntDType, ) -> (FloatTensor<Flex>, IntTensor<Flex>)
tensor by value in along a given dimension. Read moreSource§fn float_argsort(
tensor: FloatTensor<Flex>,
dim: usize,
descending: bool,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn float_argsort( tensor: FloatTensor<Flex>, dim: usize, descending: bool, out_dtype: IntDType, ) -> IntTensor<Flex>
tensor by value along a given dimension. Read moreSource§fn float_powi(lhs: FloatTensor<Flex>, rhs: IntTensor<Flex>) -> FloatTensor<Flex>
fn float_powi(lhs: FloatTensor<Flex>, rhs: IntTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_powi_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
fn float_powi_scalar(lhs: FloatTensor<Flex>, rhs: Scalar) -> FloatTensor<Flex>
Source§fn float_powf_scalar(
tensor: FloatTensor<Flex>,
value: Scalar,
) -> FloatTensor<Flex>
fn float_powf_scalar( tensor: FloatTensor<Flex>, value: Scalar, ) -> FloatTensor<Flex>
value. Read moreSource§fn float_max_abs(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
fn float_max_abs(tensor: FloatTensor<Flex>) -> FloatTensor<Flex>
Source§fn float_max_abs_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
fn float_max_abs_dim(tensor: FloatTensor<Flex>, dim: usize) -> FloatTensor<Flex>
Source§fn float_is_nan(
tensor: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_is_nan( tensor: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_is_inf(
tensor: FloatTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn float_is_inf( tensor: FloatTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn float_hypot(
lhs: FloatTensor<Flex>,
rhs: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn float_hypot( lhs: FloatTensor<Flex>, rhs: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn float_scatter(
dim: usize,
tensor: <B as BackendTypes>::FloatTensorPrimitive,
indices: <B as BackendTypes>::IntTensorPrimitive,
value: <B as BackendTypes>::FloatTensorPrimitive,
update: IndexingUpdateOp,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn float_scatter( dim: usize, tensor: <B as BackendTypes>::FloatTensorPrimitive, indices: <B as BackendTypes>::IntTensorPrimitive, value: <B as BackendTypes>::FloatTensorPrimitive, update: IndexingUpdateOp, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn float_select_assign(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
indices: <B as BackendTypes>::IntTensorPrimitive,
value: <B as BackendTypes>::FloatTensorPrimitive,
update: IndexingUpdateOp,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn float_select_assign( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, indices: <B as BackendTypes>::IntTensorPrimitive, value: <B as BackendTypes>::FloatTensorPrimitive, update: IndexingUpdateOp, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn float_mask_select(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
mask: <B as BackendTypes>::BoolTensorPrimitive,
) -> impl Future<Output = <B as BackendTypes>::FloatTensorPrimitive> + Send + 'static
fn float_mask_select( tensor: <B as BackendTypes>::FloatTensorPrimitive, mask: <B as BackendTypes>::BoolTensorPrimitive, ) -> impl Future<Output = <B as BackendTypes>::FloatTensorPrimitive> + Send + 'static
Source§fn float_set_require_grad(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
_require_grad: bool,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn float_set_require_grad( tensor: <B as BackendTypes>::FloatTensorPrimitive, _require_grad: bool, ) -> <B as BackendTypes>::FloatTensorPrimitive
require_grad flag of a tensor.Source§fn float_is_require_grad(
_tensor: &<B as BackendTypes>::FloatTensorPrimitive,
) -> bool
fn float_is_require_grad( _tensor: &<B as BackendTypes>::FloatTensorPrimitive, ) -> bool
require_grad flag of a tensor.Source§fn float_powi_scalar_impl(
lhs: <B as BackendTypes>::FloatTensorPrimitive,
rhs: Scalar,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn float_powi_scalar_impl( lhs: <B as BackendTypes>::FloatTensorPrimitive, rhs: Scalar, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn float_argtopk(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
k: usize,
out_dtype: IntDType,
) -> <B as BackendTypes>::IntTensorPrimitive
fn float_argtopk( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, k: usize, out_dtype: IntDType, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn float_topk(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
k: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn float_topk( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, k: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn float_topk_with_indices(
tensor: <B as BackendTypes>::FloatTensorPrimitive,
dim: usize,
k: usize,
out_dtype: IntDType,
) -> (<B as BackendTypes>::FloatTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn float_topk_with_indices( tensor: <B as BackendTypes>::FloatTensorPrimitive, dim: usize, k: usize, out_dtype: IntDType, ) -> (<B as BackendTypes>::FloatTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
Source§impl IntTensorOps<Flex> for Flex
impl IntTensorOps<Flex> for Flex
Source§fn int_gather(
dim: usize,
tensor: IntTensor<Flex>,
indices: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_gather( dim: usize, tensor: IntTensor<Flex>, indices: IntTensor<Flex>, ) -> IntTensor<Flex>
Gather ints along dim at the given indices.
The tensor dispatches on its own int dtype (I8/I16/I32/I64 signed or
U8/U16/U32/U64 unsigned). The indices tensor may be any of those
widths too - it’s normalised to isize by the shared read_indices
helper in ops::gather_scatter before the kernel runs, so callers are
not required to pre-convert to I64.
Source§fn int_scatter_add(
dim: usize,
tensor: IntTensor<Flex>,
indices: IntTensor<Flex>,
value: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_scatter_add( dim: usize, tensor: IntTensor<Flex>, indices: IntTensor<Flex>, value: IntTensor<Flex>, ) -> IntTensor<Flex>
Scatter-add int values at the given indices along dim.
tensor and value must share the same int dtype; indices may be
any supported int width. See int_gather for the
full index-width policy.
Source§fn int_select(
tensor: IntTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_select( tensor: IntTensor<Flex>, dim: usize, indices: IntTensor<Flex>, ) -> IntTensor<Flex>
Select ints along dim by a 1D index tensor.
The indices tensor may be any supported int width. See
int_gather for the full index-width policy.
Source§fn int_select_add(
tensor: IntTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
value: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_select_add( tensor: IntTensor<Flex>, dim: usize, indices: IntTensor<Flex>, value: IntTensor<Flex>, ) -> IntTensor<Flex>
Select-add int values at a 1D index tensor along dim.
tensor and value must share the same int dtype; indices may be
any supported int width. See int_gather for the
full index-width policy.
Source§fn int_from_data(data: TensorData, _device: &Device<Flex>) -> IntTensor<Flex>
fn int_from_data(data: TensorData, _device: &Device<Flex>) -> IntTensor<Flex>
Source§async fn int_into_data(
tensor: IntTensor<Flex>,
) -> Result<TensorData, ExecutionError>
async fn int_into_data( tensor: IntTensor<Flex>, ) -> Result<TensorData, ExecutionError>
Source§fn int_to_device(
tensor: IntTensor<Flex>,
_device: &Device<Flex>,
) -> IntTensor<Flex>
fn int_to_device( tensor: IntTensor<Flex>, _device: &Device<Flex>, ) -> IntTensor<Flex>
Source§fn int_cat(tensors: Vec<IntTensor<Flex>>, dim: usize) -> IntTensor<Flex>
fn int_cat(tensors: Vec<IntTensor<Flex>>, dim: usize) -> IntTensor<Flex>
Source§fn int_reshape(tensor: IntTensor<Flex>, shape: Shape) -> IntTensor<Flex>
fn int_reshape(tensor: IntTensor<Flex>, shape: Shape) -> IntTensor<Flex>
Source§fn int_slice(tensor: IntTensor<Flex>, slices: &[Slice]) -> IntTensor<Flex>
fn int_slice(tensor: IntTensor<Flex>, slices: &[Slice]) -> IntTensor<Flex>
Source§fn int_empty(
shape: Shape,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_empty( shape: Shape, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_mask_where(
tensor: IntTensor<Flex>,
mask: BoolTensor<Flex>,
value: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_mask_where( tensor: IntTensor<Flex>, mask: BoolTensor<Flex>, value: IntTensor<Flex>, ) -> IntTensor<Flex>
Source§fn int_mask_fill(
tensor: IntTensor<Flex>,
mask: BoolTensor<Flex>,
value: Scalar,
) -> IntTensor<Flex>
fn int_mask_fill( tensor: IntTensor<Flex>, mask: BoolTensor<Flex>, value: Scalar, ) -> IntTensor<Flex>
Source§fn int_slice_assign(
tensor: IntTensor<Flex>,
slices: &[Slice],
value: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_slice_assign( tensor: IntTensor<Flex>, slices: &[Slice], value: IntTensor<Flex>, ) -> IntTensor<Flex>
Source§fn int_scatter_nd(
data: IntTensor<Flex>,
indices: IntTensor<Flex>,
values: IntTensor<Flex>,
reduction: IndexingUpdateOp,
) -> IntTensor<Flex>
fn int_scatter_nd( data: IntTensor<Flex>, indices: IntTensor<Flex>, values: IntTensor<Flex>, reduction: IndexingUpdateOp, ) -> IntTensor<Flex>
Source§fn int_gather_nd(
data: IntTensor<Flex>,
indices: IntTensor<Flex>,
) -> IntTensor<Flex>
fn int_gather_nd( data: IntTensor<Flex>, indices: IntTensor<Flex>, ) -> IntTensor<Flex>
Source§fn int_equal(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_equal( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_equal_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_equal_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_greater(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_greater( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_greater_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_greater_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_greater_equal(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_greater_equal( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_greater_equal_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_greater_equal_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_lower(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_lower( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_lower_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_lower_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_lower_equal(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_lower_equal( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_lower_equal_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_lower_equal_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_add(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_add(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_add_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_add_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_sub(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_sub(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_sub_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_sub_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_mul(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_mul(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_mul_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_mul_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_div(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_div(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_div_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_div_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_remainder(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_remainder(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_remainder_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_remainder_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_into_float(
tensor: IntTensor<Flex>,
out_dtype: FloatDType,
) -> FloatTensor<Flex>
fn int_into_float( tensor: IntTensor<Flex>, out_dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn int_swap_dims(
tensor: IntTensor<Flex>,
dim1: usize,
dim2: usize,
) -> IntTensor<Flex>
fn int_swap_dims( tensor: IntTensor<Flex>, dim1: usize, dim2: usize, ) -> IntTensor<Flex>
Source§fn int_permute(tensor: IntTensor<Flex>, axes: &[usize]) -> IntTensor<Flex>
fn int_permute(tensor: IntTensor<Flex>, axes: &[usize]) -> IntTensor<Flex>
Source§fn int_flip(tensor: IntTensor<Flex>, axes: &[usize]) -> IntTensor<Flex>
fn int_flip(tensor: IntTensor<Flex>, axes: &[usize]) -> IntTensor<Flex>
Source§fn int_random(
shape: Shape,
distribution: Distribution,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_random( shape: Shape, distribution: Distribution, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_expand(tensor: IntTensor<Flex>, shape: Shape) -> IntTensor<Flex>
fn int_expand(tensor: IntTensor<Flex>, shape: Shape) -> IntTensor<Flex>
tensor to the given shape.Source§fn int_matmul(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_matmul(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_sum(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_sum(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_sum_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_sum_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_prod(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_prod(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_prod_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_prod_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_mean_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_mean_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_cumsum(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_cumsum(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_cumprod(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_cumprod(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_cummin(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_cummin(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_cummax(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_cummax(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_argmax(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_argmax(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_argmin(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_argmin(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_abs(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_abs(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn bitwise_and(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn bitwise_and(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn bitwise_and_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn bitwise_and_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn bitwise_or(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn bitwise_or(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn bitwise_or_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn bitwise_or_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn bitwise_xor(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn bitwise_xor(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn bitwise_xor_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn bitwise_xor_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn bitwise_not(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn bitwise_not(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn bitwise_left_shift(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
) -> IntTensor<Flex>
fn bitwise_left_shift( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, ) -> IntTensor<Flex>
Source§fn bitwise_left_shift_scalar(
lhs: IntTensor<Flex>,
rhs: Scalar,
) -> IntTensor<Flex>
fn bitwise_left_shift_scalar( lhs: IntTensor<Flex>, rhs: Scalar, ) -> IntTensor<Flex>
Source§fn bitwise_right_shift(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
) -> IntTensor<Flex>
fn bitwise_right_shift( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, ) -> IntTensor<Flex>
Source§fn bitwise_right_shift_scalar(
lhs: IntTensor<Flex>,
rhs: Scalar,
) -> IntTensor<Flex>
fn bitwise_right_shift_scalar( lhs: IntTensor<Flex>, rhs: Scalar, ) -> IntTensor<Flex>
Source§fn int_cast(tensor: IntTensor<Flex>, dtype: IntDType) -> IntTensor<Flex>
fn int_cast(tensor: IntTensor<Flex>, dtype: IntDType) -> IntTensor<Flex>
Source§fn int_unfold(
tensor: IntTensor<Flex>,
dim: usize,
size: usize,
step: usize,
) -> IntTensor<Flex>
fn int_unfold( tensor: IntTensor<Flex>, dim: usize, size: usize, step: usize, ) -> IntTensor<Flex>
Source§fn int_clamp(
tensor: IntTensor<Flex>,
min: Scalar,
max: Scalar,
) -> IntTensor<Flex>
fn int_clamp( tensor: IntTensor<Flex>, min: Scalar, max: Scalar, ) -> IntTensor<Flex>
Source§fn int_clamp_min(tensor: IntTensor<Flex>, min: Scalar) -> IntTensor<Flex>
fn int_clamp_min(tensor: IntTensor<Flex>, min: Scalar) -> IntTensor<Flex>
Source§fn int_clamp_max(tensor: IntTensor<Flex>, max: Scalar) -> IntTensor<Flex>
fn int_clamp_max(tensor: IntTensor<Flex>, max: Scalar) -> IntTensor<Flex>
Source§fn int_sign(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_sign(tensor: IntTensor<Flex>) -> IntTensor<Flex>
tensor. Read moreSource§fn int_mean(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_mean(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_max(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_max(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_max_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_max_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_min(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_min(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_min_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_min_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_max_dim_with_indices(
tensor: IntTensor<Flex>,
dim: usize,
) -> (IntTensor<Flex>, IntTensor<Flex>)
fn int_max_dim_with_indices( tensor: IntTensor<Flex>, dim: usize, ) -> (IntTensor<Flex>, IntTensor<Flex>)
Source§fn int_min_dim_with_indices(
tensor: IntTensor<Flex>,
dim: usize,
) -> (IntTensor<Flex>, IntTensor<Flex>)
fn int_min_dim_with_indices( tensor: IntTensor<Flex>, dim: usize, ) -> (IntTensor<Flex>, IntTensor<Flex>)
Source§fn int_any(tensor: IntTensor<Flex>, out_dtype: BoolDType) -> BoolTensor<Flex>
fn int_any(tensor: IntTensor<Flex>, out_dtype: BoolDType) -> BoolTensor<Flex>
tensor evaluates to True. Read moreSource§fn int_any_dim(
tensor: IntTensor<Flex>,
dim: usize,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_any_dim( tensor: IntTensor<Flex>, dim: usize, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_all(tensor: IntTensor<Flex>, out_dtype: BoolDType) -> BoolTensor<Flex>
fn int_all(tensor: IntTensor<Flex>, out_dtype: BoolDType) -> BoolTensor<Flex>
tensor evaluate to True. Read moreSource§fn int_all_dim(
tensor: IntTensor<Flex>,
dim: usize,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_all_dim( tensor: IntTensor<Flex>, dim: usize, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_powi(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
fn int_powi(lhs: IntTensor<Flex>, rhs: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_zeros(
shape: Shape,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_zeros( shape: Shape, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_ones(
shape: Shape,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_ones( shape: Shape, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_full(
shape: Shape,
fill_value: Scalar,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_full( shape: Shape, fill_value: Scalar, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_transpose(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_transpose(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_repeat_dim(
tensor: IntTensor<Flex>,
dim: usize,
times: usize,
) -> IntTensor<Flex>
fn int_repeat_dim( tensor: IntTensor<Flex>, dim: usize, times: usize, ) -> IntTensor<Flex>
Source§fn int_not_equal(
lhs: IntTensor<Flex>,
rhs: IntTensor<Flex>,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_not_equal( lhs: IntTensor<Flex>, rhs: IntTensor<Flex>, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_not_equal_elem(
lhs: IntTensor<Flex>,
rhs: Scalar,
out_dtype: BoolDType,
) -> BoolTensor<Flex>
fn int_not_equal_elem( lhs: IntTensor<Flex>, rhs: Scalar, out_dtype: BoolDType, ) -> BoolTensor<Flex>
Source§fn int_sort(
tensor: IntTensor<Flex>,
dim: usize,
descending: bool,
) -> IntTensor<Flex>
fn int_sort( tensor: IntTensor<Flex>, dim: usize, descending: bool, ) -> IntTensor<Flex>
tensor by value along a given dimension. Read moreSource§fn int_sort_with_indices(
tensor: IntTensor<Flex>,
dim: usize,
descending: bool,
) -> (IntTensor<Flex>, IntTensor<Flex>)
fn int_sort_with_indices( tensor: IntTensor<Flex>, dim: usize, descending: bool, ) -> (IntTensor<Flex>, IntTensor<Flex>)
tensor by value along a given dimension. Read moreSource§fn int_argsort(
tensor: IntTensor<Flex>,
dim: usize,
descending: bool,
) -> IntTensor<Flex>
fn int_argsort( tensor: IntTensor<Flex>, dim: usize, descending: bool, ) -> IntTensor<Flex>
tensor by value
along a given dimension. Read moreSource§fn int_powi_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_powi_scalar(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_powi_scalar_impl(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
fn int_powi_scalar_impl(lhs: IntTensor<Flex>, rhs: Scalar) -> IntTensor<Flex>
Source§fn int_max_abs(tensor: IntTensor<Flex>) -> IntTensor<Flex>
fn int_max_abs(tensor: IntTensor<Flex>) -> IntTensor<Flex>
Source§fn int_max_abs_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
fn int_max_abs_dim(tensor: IntTensor<Flex>, dim: usize) -> IntTensor<Flex>
Source§fn int_arange(
range: Range<i64>,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_arange( range: Range<i64>, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_arange_step(
range: Range<i64>,
step: usize,
_device: &Device<Flex>,
dtype: IntDType,
) -> IntTensor<Flex>
fn int_arange_step( range: Range<i64>, step: usize, _device: &Device<Flex>, dtype: IntDType, ) -> IntTensor<Flex>
Source§fn int_mask_select(
tensor: <B as BackendTypes>::IntTensorPrimitive,
mask: <B as BackendTypes>::BoolTensorPrimitive,
) -> impl Future<Output = <B as BackendTypes>::IntTensorPrimitive> + Send + 'static
fn int_mask_select( tensor: <B as BackendTypes>::IntTensorPrimitive, mask: <B as BackendTypes>::BoolTensorPrimitive, ) -> impl Future<Output = <B as BackendTypes>::IntTensorPrimitive> + Send + 'static
Source§fn int_scatter(
dim: usize,
tensor: <B as BackendTypes>::IntTensorPrimitive,
indices: <B as BackendTypes>::IntTensorPrimitive,
value: <B as BackendTypes>::IntTensorPrimitive,
update: IndexingUpdateOp,
) -> <B as BackendTypes>::IntTensorPrimitive
fn int_scatter( dim: usize, tensor: <B as BackendTypes>::IntTensorPrimitive, indices: <B as BackendTypes>::IntTensorPrimitive, value: <B as BackendTypes>::IntTensorPrimitive, update: IndexingUpdateOp, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn int_select_assign(
tensor: <B as BackendTypes>::IntTensorPrimitive,
dim: usize,
indices: <B as BackendTypes>::IntTensorPrimitive,
value: <B as BackendTypes>::IntTensorPrimitive,
update: IndexingUpdateOp,
) -> <B as BackendTypes>::IntTensorPrimitive
fn int_select_assign( tensor: <B as BackendTypes>::IntTensorPrimitive, dim: usize, indices: <B as BackendTypes>::IntTensorPrimitive, value: <B as BackendTypes>::IntTensorPrimitive, update: IndexingUpdateOp, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn int_square(
tensor: <B as BackendTypes>::IntTensorPrimitive,
) -> <B as BackendTypes>::IntTensorPrimitive
fn int_square( tensor: <B as BackendTypes>::IntTensorPrimitive, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn int_argtopk(
tensor: <B as BackendTypes>::IntTensorPrimitive,
dim: usize,
k: usize,
) -> <B as BackendTypes>::IntTensorPrimitive
fn int_argtopk( tensor: <B as BackendTypes>::IntTensorPrimitive, dim: usize, k: usize, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn int_topk(
tensor: <B as BackendTypes>::IntTensorPrimitive,
dim: usize,
k: usize,
) -> <B as BackendTypes>::IntTensorPrimitive
fn int_topk( tensor: <B as BackendTypes>::IntTensorPrimitive, dim: usize, k: usize, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn int_topk_with_indices(
tensor: <B as BackendTypes>::IntTensorPrimitive,
dim: usize,
k: usize,
) -> (<B as BackendTypes>::IntTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn int_topk_with_indices( tensor: <B as BackendTypes>::IntTensorPrimitive, dim: usize, k: usize, ) -> (<B as BackendTypes>::IntTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
Source§impl ModuleOps<Flex> for Flex
impl ModuleOps<Flex> for Flex
Source§fn conv1d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvOptions<1>,
) -> FloatTensor<Flex>
fn conv1d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvOptions<1>, ) -> FloatTensor<Flex>
Source§fn conv2d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvOptions<2>,
) -> FloatTensor<Flex>
fn conv2d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvOptions<2>, ) -> FloatTensor<Flex>
Source§fn deform_conv2d(
x: FloatTensor<Flex>,
offset: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
mask: Option<FloatTensor<Flex>>,
bias: Option<FloatTensor<Flex>>,
options: DeformConvOptions<2>,
) -> FloatTensor<Flex>
fn deform_conv2d( x: FloatTensor<Flex>, offset: FloatTensor<Flex>, weight: FloatTensor<Flex>, mask: Option<FloatTensor<Flex>>, bias: Option<FloatTensor<Flex>>, options: DeformConvOptions<2>, ) -> FloatTensor<Flex>
Source§fn deform_conv2d_backward(
x: FloatTensor<Flex>,
offset: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
mask: Option<FloatTensor<Flex>>,
bias: Option<FloatTensor<Flex>>,
output_grad: FloatTensor<Flex>,
options: DeformConvOptions<2>,
) -> DeformConv2dBackward<Flex>
fn deform_conv2d_backward( x: FloatTensor<Flex>, offset: FloatTensor<Flex>, weight: FloatTensor<Flex>, mask: Option<FloatTensor<Flex>>, bias: Option<FloatTensor<Flex>>, output_grad: FloatTensor<Flex>, options: DeformConvOptions<2>, ) -> DeformConv2dBackward<Flex>
Source§fn conv3d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvOptions<3>,
) -> FloatTensor<Flex>
fn conv3d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvOptions<3>, ) -> FloatTensor<Flex>
Source§fn conv_transpose1d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvTransposeOptions<1>,
) -> FloatTensor<Flex>
fn conv_transpose1d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvTransposeOptions<1>, ) -> FloatTensor<Flex>
Source§fn conv_transpose2d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvTransposeOptions<2>,
) -> FloatTensor<Flex>
fn conv_transpose2d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvTransposeOptions<2>, ) -> FloatTensor<Flex>
Source§fn conv_transpose3d(
x: FloatTensor<Flex>,
weight: FloatTensor<Flex>,
bias: Option<FloatTensor<Flex>>,
options: ConvTransposeOptions<3>,
) -> FloatTensor<Flex>
fn conv_transpose3d( x: FloatTensor<Flex>, weight: FloatTensor<Flex>, bias: Option<FloatTensor<Flex>>, options: ConvTransposeOptions<3>, ) -> FloatTensor<Flex>
Source§fn avg_pool2d(
x: FloatTensor<Flex>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
ceil_mode: bool,
) -> FloatTensor<Flex>
fn avg_pool2d( x: FloatTensor<Flex>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], count_include_pad: bool, ceil_mode: bool, ) -> FloatTensor<Flex>
Source§fn avg_pool2d_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
count_include_pad: bool,
_divisor_override: bool,
) -> FloatTensor<Flex>
fn avg_pool2d_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], count_include_pad: bool, _divisor_override: bool, ) -> FloatTensor<Flex>
Source§fn adaptive_avg_pool2d(
x: FloatTensor<Flex>,
output_size: [usize; 2],
) -> FloatTensor<Flex>
fn adaptive_avg_pool2d( x: FloatTensor<Flex>, output_size: [usize; 2], ) -> FloatTensor<Flex>
Source§fn adaptive_avg_pool2d_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn adaptive_avg_pool2d_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn adaptive_avg_pool3d(
x: FloatTensor<Flex>,
output_size: [usize; 3],
) -> FloatTensor<Flex>
fn adaptive_avg_pool3d( x: FloatTensor<Flex>, output_size: [usize; 3], ) -> FloatTensor<Flex>
Source§fn adaptive_avg_pool3d_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
) -> FloatTensor<Flex>
fn adaptive_avg_pool3d_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn max_pool2d(
x: FloatTensor<Flex>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
ceil_mode: bool,
) -> FloatTensor<Flex>
fn max_pool2d( x: FloatTensor<Flex>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2], ceil_mode: bool, ) -> FloatTensor<Flex>
Source§fn max_pool2d_with_indices(
x: FloatTensor<Flex>,
kernel_size: [usize; 2],
stride: [usize; 2],
padding: [usize; 2],
dilation: [usize; 2],
ceil_mode: bool,
indices_dtype: IntDType,
) -> MaxPool2dWithIndices<Flex>
fn max_pool2d_with_indices( x: FloatTensor<Flex>, kernel_size: [usize; 2], stride: [usize; 2], padding: [usize; 2], dilation: [usize; 2], ceil_mode: bool, indices_dtype: IntDType, ) -> MaxPool2dWithIndices<Flex>
Source§fn max_pool2d_with_indices_backward(
x: FloatTensor<Flex>,
_kernel_size: [usize; 2],
_stride: [usize; 2],
_padding: [usize; 2],
_dilation: [usize; 2],
_ceil_mode: bool,
output_grad: FloatTensor<Flex>,
indices: IntTensor<Flex>,
) -> MaxPool2dBackward<Flex>
fn max_pool2d_with_indices_backward( x: FloatTensor<Flex>, _kernel_size: [usize; 2], _stride: [usize; 2], _padding: [usize; 2], _dilation: [usize; 2], _ceil_mode: bool, output_grad: FloatTensor<Flex>, indices: IntTensor<Flex>, ) -> MaxPool2dBackward<Flex>
Source§fn interpolate(
x: FloatTensor<Flex>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<Flex>
fn interpolate( x: FloatTensor<Flex>, output_size: [usize; 2], options: InterpolateOptions, ) -> FloatTensor<Flex>
Source§fn interpolate_backward(
x: FloatTensor<Flex>,
grad: FloatTensor<Flex>,
output_size: [usize; 2],
options: InterpolateOptions,
) -> FloatTensor<Flex>
fn interpolate_backward( x: FloatTensor<Flex>, grad: FloatTensor<Flex>, output_size: [usize; 2], options: InterpolateOptions, ) -> FloatTensor<Flex>
Source§fn attention(
query: FloatTensor<Flex>,
key: FloatTensor<Flex>,
value: FloatTensor<Flex>,
mask: Option<BoolTensor<Flex>>,
attn_bias: Option<FloatTensor<Flex>>,
options: AttentionModuleOptions,
) -> FloatTensor<Flex>
fn attention( query: FloatTensor<Flex>, key: FloatTensor<Flex>, value: FloatTensor<Flex>, mask: Option<BoolTensor<Flex>>, attn_bias: Option<FloatTensor<Flex>>, options: AttentionModuleOptions, ) -> FloatTensor<Flex>
Source§fn rfft(
signal: FloatTensor<Flex>,
dim: usize,
n: Option<usize>,
) -> (FloatTensor<Flex>, FloatTensor<Flex>)
fn rfft( signal: FloatTensor<Flex>, dim: usize, n: Option<usize>, ) -> (FloatTensor<Flex>, FloatTensor<Flex>)
Source§fn irfft(
spectrum_re: FloatTensor<Flex>,
spectrum_im: FloatTensor<Flex>,
dim: usize,
n: Option<usize>,
) -> FloatTensor<Flex>
fn irfft( spectrum_re: FloatTensor<Flex>, spectrum_im: FloatTensor<Flex>, dim: usize, n: Option<usize>, ) -> FloatTensor<Flex>
Source§fn embedding(
weights: FloatTensor<Flex>,
indices: IntTensor<Flex>,
) -> FloatTensor<Flex>
fn embedding( weights: FloatTensor<Flex>, indices: IntTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn layer_norm(
tensor: FloatTensor<Flex>,
gamma: FloatTensor<Flex>,
beta: Option<FloatTensor<Flex>>,
epsilon: f64,
) -> FloatTensor<Flex>
fn layer_norm( tensor: FloatTensor<Flex>, gamma: FloatTensor<Flex>, beta: Option<FloatTensor<Flex>>, epsilon: f64, ) -> FloatTensor<Flex>
Source§fn embedding_backward(
weights: FloatTensor<Flex>,
output_grad: FloatTensor<Flex>,
indices: IntTensor<Flex>,
) -> FloatTensor<Flex>
fn embedding_backward( weights: FloatTensor<Flex>, output_grad: FloatTensor<Flex>, indices: IntTensor<Flex>, ) -> FloatTensor<Flex>
Source§fn linear(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
bias: Option<<B as BackendTypes>::FloatTensorPrimitive>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn linear( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, bias: Option<<B as BackendTypes>::FloatTensorPrimitive>, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn linear_x_backward(
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn linear_x_backward( weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn linear_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn linear_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn linear_bias_backward(
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn linear_bias_backward( output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv1d_x_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<1>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv1d_x_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<1>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv1d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<1>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv1d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<1>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv1d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv1d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv2d_x_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<2>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv2d_x_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<2>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv2d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<2>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv2d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<2>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv2d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv2d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv3d_x_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<3>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv3d_x_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<3>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv3d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvOptions<3>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv3d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvOptions<3>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv3d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv3d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv_transpose1d_x_backward(
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<1>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose1d_x_backward( weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<1>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv_transpose1d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<1>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose1d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<1>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv_transpose1d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose1d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv_transpose2d_x_backward(
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<2>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose2d_x_backward( weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<2>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv_transpose2d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<2>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose2d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<2>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv_transpose2d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose2d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn conv_transpose3d_x_backward(
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<3>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose3d_x_backward( weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<3>, ) -> <B as BackendTypes>::FloatTensorPrimitive
x.Source§fn conv_transpose3d_weight_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
weight: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
options: ConvTransposeOptions<3>,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose3d_weight_backward( x: <B as BackendTypes>::FloatTensorPrimitive, weight: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, options: ConvTransposeOptions<3>, ) -> <B as BackendTypes>::FloatTensorPrimitive
weight.Source§fn conv_transpose3d_bias_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
bias: <B as BackendTypes>::FloatTensorPrimitive,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn conv_transpose3d_bias_backward( x: <B as BackendTypes>::FloatTensorPrimitive, bias: <B as BackendTypes>::FloatTensorPrimitive, output_grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
bias.Source§fn unfold4d(
x: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: [usize; 2],
options: UnfoldOptions,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn unfold4d( x: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: [usize; 2], options: UnfoldOptions, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn fold4d(
x: <B as BackendTypes>::FloatTensorPrimitive,
output_size: [usize; 2],
kernel_size: [usize; 2],
options: UnfoldOptions,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn fold4d( x: <B as BackendTypes>::FloatTensorPrimitive, output_size: [usize; 2], kernel_size: [usize; 2], options: UnfoldOptions, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn avg_pool1d(
x: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
ceil_mode: bool,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn avg_pool1d( x: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: usize, stride: usize, padding: usize, count_include_pad: bool, ceil_mode: bool, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn avg_pool1d_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
grad: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: usize,
stride: usize,
padding: usize,
count_include_pad: bool,
ceil_mode: bool,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn avg_pool1d_backward( x: <B as BackendTypes>::FloatTensorPrimitive, grad: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: usize, stride: usize, padding: usize, count_include_pad: bool, ceil_mode: bool, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn adaptive_avg_pool1d(
x: <B as BackendTypes>::FloatTensorPrimitive,
output_size: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn adaptive_avg_pool1d( x: <B as BackendTypes>::FloatTensorPrimitive, output_size: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn adaptive_avg_pool1d_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
grad: <B as BackendTypes>::FloatTensorPrimitive,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn adaptive_avg_pool1d_backward( x: <B as BackendTypes>::FloatTensorPrimitive, grad: <B as BackendTypes>::FloatTensorPrimitive, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn max_pool1d(
x: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
ceil_mode: bool,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn max_pool1d( x: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: usize, stride: usize, padding: usize, dilation: usize, ceil_mode: bool, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn max_pool1d_with_indices(
x: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
ceil_mode: bool,
indices_dtype: IntDType,
) -> MaxPool1dWithIndices<B>
fn max_pool1d_with_indices( x: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: usize, stride: usize, padding: usize, dilation: usize, ceil_mode: bool, indices_dtype: IntDType, ) -> MaxPool1dWithIndices<B>
Source§fn max_pool1d_with_indices_backward(
x: <B as BackendTypes>::FloatTensorPrimitive,
kernel_size: usize,
stride: usize,
padding: usize,
dilation: usize,
ceil_mode: bool,
output_grad: <B as BackendTypes>::FloatTensorPrimitive,
indices: <B as BackendTypes>::IntTensorPrimitive,
) -> MaxPool1dBackward<B>
fn max_pool1d_with_indices_backward( x: <B as BackendTypes>::FloatTensorPrimitive, kernel_size: usize, stride: usize, padding: usize, dilation: usize, ceil_mode: bool, output_grad: <B as BackendTypes>::FloatTensorPrimitive, indices: <B as BackendTypes>::IntTensorPrimitive, ) -> MaxPool1dBackward<B>
Source§fn ctc_loss(
log_probs: <B as BackendTypes>::FloatTensorPrimitive,
targets: <B as BackendTypes>::IntTensorPrimitive,
input_lengths: <B as BackendTypes>::IntTensorPrimitive,
target_lengths: <B as BackendTypes>::IntTensorPrimitive,
blank: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn ctc_loss( log_probs: <B as BackendTypes>::FloatTensorPrimitive, targets: <B as BackendTypes>::IntTensorPrimitive, input_lengths: <B as BackendTypes>::IntTensorPrimitive, target_lengths: <B as BackendTypes>::IntTensorPrimitive, blank: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§fn has_ctc_loss_backward() -> bool
fn has_ctc_loss_backward() -> bool
Source§fn ctc_loss_backward(
_log_probs: <B as BackendTypes>::FloatTensorPrimitive,
_targets: <B as BackendTypes>::IntTensorPrimitive,
_input_lengths: <B as BackendTypes>::IntTensorPrimitive,
_target_lengths: <B as BackendTypes>::IntTensorPrimitive,
_grad_loss: <B as BackendTypes>::FloatTensorPrimitive,
_blank: usize,
) -> <B as BackendTypes>::FloatTensorPrimitive
fn ctc_loss_backward( _log_probs: <B as BackendTypes>::FloatTensorPrimitive, _targets: <B as BackendTypes>::IntTensorPrimitive, _input_lengths: <B as BackendTypes>::IntTensorPrimitive, _target_lengths: <B as BackendTypes>::IntTensorPrimitive, _grad_loss: <B as BackendTypes>::FloatTensorPrimitive, _blank: usize, ) -> <B as BackendTypes>::FloatTensorPrimitive
Source§impl QTensorOps<Flex> for Flex
impl QTensorOps<Flex> for Flex
Source§fn q_from_data(
data: TensorData,
_device: &Device<Flex>,
) -> QuantizedTensor<Flex>
fn q_from_data( data: TensorData, _device: &Device<Flex>, ) -> QuantizedTensor<Flex>
Source§fn quantize_dynamic(
tensor: FloatTensor<Flex>,
scheme: &QuantScheme,
) -> QuantizedTensor<Flex>
fn quantize_dynamic( tensor: FloatTensor<Flex>, scheme: &QuantScheme, ) -> QuantizedTensor<Flex>
Source§fn quantize(
tensor: FloatTensor<Flex>,
scheme: &QuantScheme,
qparams: QuantizationParametersPrimitive<Flex>,
) -> QuantizedTensor<Flex>
fn quantize( tensor: FloatTensor<Flex>, scheme: &QuantScheme, qparams: QuantizationParametersPrimitive<Flex>, ) -> QuantizedTensor<Flex>
Source§fn dequantize(
tensor: QuantizedTensor<Flex>,
dtype: FloatDType,
) -> FloatTensor<Flex>
fn dequantize( tensor: QuantizedTensor<Flex>, dtype: FloatDType, ) -> FloatTensor<Flex>
Source§fn q_to_device(
tensor: QuantizedTensor<Flex>,
_device: &Device<Flex>,
) -> QuantizedTensor<Flex>
fn q_to_device( tensor: QuantizedTensor<Flex>, _device: &Device<Flex>, ) -> QuantizedTensor<Flex>
Source§fn q_reshape(
tensor: QuantizedTensor<Flex>,
shape: Shape,
) -> QuantizedTensor<Flex>
fn q_reshape( tensor: QuantizedTensor<Flex>, shape: Shape, ) -> QuantizedTensor<Flex>
Source§async fn q_into_data(
tensor: QuantizedTensor<Flex>,
) -> Result<TensorData, ExecutionError>
async fn q_into_data( tensor: QuantizedTensor<Flex>, ) -> Result<TensorData, ExecutionError>
Source§fn q_swap_dims(
tensor: QuantizedTensor<Flex>,
dim1: usize,
dim2: usize,
) -> QuantizedTensor<Flex>
fn q_swap_dims( tensor: QuantizedTensor<Flex>, dim1: usize, dim2: usize, ) -> QuantizedTensor<Flex>
Source§fn q_permute(
tensor: QuantizedTensor<Flex>,
axes: &[usize],
) -> QuantizedTensor<Flex>
fn q_permute( tensor: QuantizedTensor<Flex>, axes: &[usize], ) -> QuantizedTensor<Flex>
Source§fn q_flip(
tensor: QuantizedTensor<Flex>,
axes: &[usize],
) -> QuantizedTensor<Flex>
fn q_flip( tensor: QuantizedTensor<Flex>, axes: &[usize], ) -> QuantizedTensor<Flex>
Source§fn q_expand(
tensor: QuantizedTensor<Flex>,
shape: Shape,
) -> QuantizedTensor<Flex>
fn q_expand( tensor: QuantizedTensor<Flex>, shape: Shape, ) -> QuantizedTensor<Flex>
tensor to the given shape.Source§fn q_select(
tensor: QuantizedTensor<Flex>,
dim: usize,
indices: IntTensor<Flex>,
) -> QuantizedTensor<Flex>
fn q_select( tensor: QuantizedTensor<Flex>, dim: usize, indices: IntTensor<Flex>, ) -> QuantizedTensor<Flex>
Source§fn q_slice(
tensor: QuantizedTensor<Flex>,
slices: &[Slice],
) -> QuantizedTensor<Flex>
fn q_slice( tensor: QuantizedTensor<Flex>, slices: &[Slice], ) -> QuantizedTensor<Flex>
Source§fn q_argmax(
tensor: QuantizedTensor<Flex>,
dim: usize,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn q_argmax( tensor: QuantizedTensor<Flex>, dim: usize, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn q_argmin(
tensor: QuantizedTensor<Flex>,
dim: usize,
out_dtype: IntDType,
) -> IntTensor<Flex>
fn q_argmin( tensor: QuantizedTensor<Flex>, dim: usize, out_dtype: IntDType, ) -> IntTensor<Flex>
Source§fn q_gather(
dim: usize,
tensor: QuantizedTensor<Flex>,
indices: IntTensor<Flex>,
) -> QuantizedTensor<Flex>
fn q_gather( dim: usize, tensor: QuantizedTensor<Flex>, indices: IntTensor<Flex>, ) -> QuantizedTensor<Flex>
Source§fn q_detach(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_detach( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_set_require_grad(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
_require_grad: bool,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_set_require_grad( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, _require_grad: bool, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
require_grad flag of a tensor.Source§fn q_is_require_grad(
_tensor: &<B as BackendTypes>::QuantizedTensorPrimitive,
) -> bool
fn q_is_require_grad( _tensor: &<B as BackendTypes>::QuantizedTensorPrimitive, ) -> bool
require_grad flag of a tensor.Source§fn q_transpose(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_transpose( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_repeat_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
times: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_repeat_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, times: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_add(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_add( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_add_scalar(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: Scalar,
) -> TensorPrimitive<B>
fn q_add_scalar( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: Scalar, ) -> TensorPrimitive<B>
Source§fn q_clamp_min(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
min: Scalar,
) -> TensorPrimitive<B>
fn q_clamp_min( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, min: Scalar, ) -> TensorPrimitive<B>
Source§fn q_clamp_max(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
max: Scalar,
) -> TensorPrimitive<B>
fn q_clamp_max( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, max: Scalar, ) -> TensorPrimitive<B>
Source§fn q_clamp(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
min: Scalar,
max: Scalar,
) -> TensorPrimitive<B>
fn q_clamp( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, min: Scalar, max: Scalar, ) -> TensorPrimitive<B>
Source§fn q_sub(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_sub( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_sub_scalar(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: Scalar,
) -> TensorPrimitive<B>
fn q_sub_scalar( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: Scalar, ) -> TensorPrimitive<B>
Source§fn q_mul(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_mul( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_mul_scalar(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: Scalar,
) -> TensorPrimitive<B>
fn q_mul_scalar( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: Scalar, ) -> TensorPrimitive<B>
Source§fn q_div(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_div( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_div_scalar(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: Scalar,
) -> TensorPrimitive<B>
fn q_div_scalar( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: Scalar, ) -> TensorPrimitive<B>
Source§fn q_matmul(
lhs: TensorPrimitive<B>,
rhs: TensorPrimitive<B>,
) -> TensorPrimitive<B>
fn q_matmul( lhs: TensorPrimitive<B>, rhs: TensorPrimitive<B>, ) -> TensorPrimitive<B>
Source§fn q_neg(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_neg( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_recip(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_recip( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_sum(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_sum( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_sum_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_sum_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_prod(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_prod( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_prod_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_prod_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_mean(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_mean( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_mean_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_mean_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_cumsum(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_cumsum( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_cumprod(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_cumprod( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_cummin(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_cummin( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_cummax(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> TensorPrimitive<B>
fn q_cummax( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> TensorPrimitive<B>
Source§fn q_exp(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_exp( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_log(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_log( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_log1p(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_log1p( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_powf(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_powf( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_powi(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: <B as BackendTypes>::IntTensorPrimitive,
) -> TensorPrimitive<B>
fn q_powi( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: <B as BackendTypes>::IntTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_powi_scalar(
lhs: <B as BackendTypes>::QuantizedTensorPrimitive,
rhs: Scalar,
) -> TensorPrimitive<B>
fn q_powi_scalar( lhs: <B as BackendTypes>::QuantizedTensorPrimitive, rhs: Scalar, ) -> TensorPrimitive<B>
Source§fn q_powf_scalar(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
value: Scalar,
) -> TensorPrimitive<B>
fn q_powf_scalar( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, value: Scalar, ) -> TensorPrimitive<B>
Source§fn q_sqrt(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_sqrt( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_abs(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_abs( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_cos(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_cos( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_sin(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_sin( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_tan(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_tan( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_cosh(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_cosh( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_sinh(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_sinh( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_tanh(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_tanh( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_erf(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> TensorPrimitive<B>
fn q_erf( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> TensorPrimitive<B>
Source§fn q_cat(
tensors: Vec<<B as BackendTypes>::QuantizedTensorPrimitive>,
dim: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_cat( tensors: Vec<<B as BackendTypes>::QuantizedTensorPrimitive>, dim: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_argtopk(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
k: usize,
out_dtype: IntDType,
) -> <B as BackendTypes>::IntTensorPrimitive
fn q_argtopk( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, k: usize, out_dtype: IntDType, ) -> <B as BackendTypes>::IntTensorPrimitive
Source§fn q_topk(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
k: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_topk( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, k: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_topk_with_indices(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
k: usize,
out_dtype: IntDType,
) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn q_topk_with_indices( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, k: usize, out_dtype: IntDType, ) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
Source§fn q_max(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_max( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_max_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_max_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_max_dim_with_indices(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
out_dtype: IntDType,
) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn q_max_dim_with_indices( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, out_dtype: IntDType, ) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
Source§fn q_min(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_min( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_min_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_min_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_min_dim_with_indices(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
out_dtype: IntDType,
) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn q_min_dim_with_indices( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, out_dtype: IntDType, ) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
Source§fn q_max_abs(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_max_abs( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_max_abs_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_max_abs_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
Source§fn q_any(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
out_dtype: BoolStore,
) -> <B as BackendTypes>::BoolTensorPrimitive
fn q_any( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, out_dtype: BoolStore, ) -> <B as BackendTypes>::BoolTensorPrimitive
tensor evaluates to True. Read moreSource§fn q_any_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
out_dtype: BoolStore,
) -> <B as BackendTypes>::BoolTensorPrimitive
fn q_any_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, out_dtype: BoolStore, ) -> <B as BackendTypes>::BoolTensorPrimitive
Source§fn q_all(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
out_dtype: BoolStore,
) -> <B as BackendTypes>::BoolTensorPrimitive
fn q_all( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, out_dtype: BoolStore, ) -> <B as BackendTypes>::BoolTensorPrimitive
tensor evaluate to True. Read moreSource§fn q_all_dim(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
out_dtype: BoolStore,
) -> <B as BackendTypes>::BoolTensorPrimitive
fn q_all_dim( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, out_dtype: BoolStore, ) -> <B as BackendTypes>::BoolTensorPrimitive
Source§fn q_sort(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
descending: bool,
) -> <B as BackendTypes>::QuantizedTensorPrimitive
fn q_sort( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, descending: bool, ) -> <B as BackendTypes>::QuantizedTensorPrimitive
tensor by value in along a given dimension. Read moreSource§fn q_sort_with_indices(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
descending: bool,
out_dtype: IntDType,
) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
fn q_sort_with_indices( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, descending: bool, out_dtype: IntDType, ) -> (<B as BackendTypes>::QuantizedTensorPrimitive, <B as BackendTypes>::IntTensorPrimitive)
tensor by value in along a given dimension. Read moreSource§fn q_argsort(
tensor: <B as BackendTypes>::QuantizedTensorPrimitive,
dim: usize,
descending: bool,
out_dtype: IntDType,
) -> <B as BackendTypes>::IntTensorPrimitive
fn q_argsort( tensor: <B as BackendTypes>::QuantizedTensorPrimitive, dim: usize, descending: bool, out_dtype: IntDType, ) -> <B as BackendTypes>::IntTensorPrimitive
tensor by value along a given dimension. Read moreSource§impl TransactionOps<Flex> for Flex
impl TransactionOps<Flex> for Flex
Source§fn tr_execute(
transaction: TransactionPrimitive<B>,
) -> impl Future<Output = Result<TransactionPrimitiveData, ExecutionError>> + Send
fn tr_execute( transaction: TransactionPrimitive<B>, ) -> impl Future<Output = Result<TransactionPrimitiveData, ExecutionError>> + Send
Auto Trait Implementations§
impl Freeze for Flex
impl RefUnwindSafe for Flex
impl Send for Flex
impl Sync for Flex
impl Unpin for Flex
impl UnsafeUnpin for Flex
impl UnwindSafe for Flex
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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