Class UnsafeArrayCPUOps
Unsafe array based IOps
implementation
Inherited Members
Namespace: Unity.Barracuda
Assembly: solution.dll
Syntax
public class UnsafeArrayCPUOps : ReferenceCPUOps, IOps, IOpsStatistics
Constructors
UnsafeArrayCPUOps(ITensorAllocator)
Create UnsafeArrayCPUOps
Declaration
public UnsafeArrayCPUOps(ITensorAllocator allocator = null)
Parameters
Type | Name | Description |
---|---|---|
ITensor |
allocator | allocator |
Methods
Acos(Tensor)
Acos
Declaration
public override Tensor Acos(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Acosh(Tensor)
Acosh
Declaration
public override Tensor Acosh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Add(Tensor[])
Add tensors
together
Declaration
public override Tensor Add(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
ApplyFusedActivation(Tensor, FusedActivation)
Apply fused activation
Declaration
protected Tensor ApplyFusedActivation(Tensor X, Layer.FusedActivation fusedActivation)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | input |
Layer.Fused |
fusedActivation | fused activation type |
Returns
Type | Description |
---|---|
Tensor | output |
Exceptions
Type | Condition |
---|---|
Not |
thrown if unsupported activation type encountered |
Asin(Tensor)
Asin
Declaration
public override Tensor Asin(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Asinh(Tensor)
Asinh
Declaration
public override Tensor Asinh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Atan(Tensor)
Atan
Declaration
public override Tensor Atan(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Atanh(Tensor)
Atanh
Declaration
public override Tensor Atanh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
AvgPool2D(Tensor, int[], int[], int[])
2D average pooling
Declaration
public override Tensor AvgPool2D(Tensor X, int[] pool, int[] stride, int[] pad)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Conv2D(Tensor, Tensor, Tensor, int[], int[], FusedActivation)
2D convolution
Declaration
public override Tensor Conv2D(Tensor X, Tensor K, Tensor B, int[] stride, int[] pad, Layer.FusedActivation fusedActivation)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | |
Tensor | K | |
Tensor | B | |
int[] | stride | stride |
int[] | pad | padding |
Layer.Fused |
fusedActivation | fused activation type |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
CopyAndReshape(Tensor, TensorShape)
Copy and reshape Tensor
Declaration
protected override Tensor CopyAndReshape(Tensor X, TensorShape shape)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | input |
Tensor |
shape | shape |
Returns
Type | Description |
---|---|
Tensor | output |
Overrides
Cos(Tensor)
Cos
Declaration
public override Tensor Cos(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Cosh(Tensor)
Cosh
Declaration
public override Tensor Cosh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Dense(Tensor, Tensor, Tensor, FusedActivation)
Dense layer (matrix multiplication) o = x
⨯ w
+ b
Declaration
public override Tensor Dense(Tensor X, Tensor W, Tensor B, Layer.FusedActivation fusedActivation)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | |
Tensor | W | |
Tensor | B | |
Layer.Fused |
fusedActivation | fused activation type |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
DepthwiseConv2D(Tensor, Tensor, Tensor, int[], int[], FusedActivation)
Depthwise 2D convolution
Declaration
public override Tensor DepthwiseConv2D(Tensor X, Tensor K, Tensor B, int[] stride, int[] pad, Layer.FusedActivation fusedActivation)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | |
Tensor | K | |
Tensor | B | |
int[] | stride | stride |
int[] | pad | padding |
Layer.Fused |
fusedActivation | fused activation type |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Div(Tensor[])
Divide tensors o = tensors[0] / tensors[1] / ... / tensors[N-1]
Declaration
public override Tensor Div(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Elu(Tensor, float)
ELU
Declaration
public override Tensor Elu(Tensor X, float alpha)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Equal(Tensor, Tensor)
Equal
Declaration
public override Tensor Equal(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
Erf(Tensor)
Erf
Declaration
public override Tensor Erf(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Exp(Tensor)
Exponent e^x
Declaration
public override Tensor Exp(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
GlobalAvgPool2D(Tensor)
2D global average pooling
Declaration
public override Tensor GlobalAvgPool2D(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
GlobalMaxPool2D(Tensor)
2D global max pooling
Declaration
public override Tensor GlobalMaxPool2D(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Greater(Tensor, Tensor)
Greater
Declaration
public override Tensor Greater(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
GreaterEqual(Tensor, Tensor)
Greater or equal
Declaration
public override Tensor GreaterEqual(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
HardSigmoid(Tensor, float, float)
HardSigmoid
Declaration
public override Tensor HardSigmoid(Tensor X, float alpha, float beta)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
LeakyRelu(Tensor, float)
Leaky ReLU
Declaration
public override Tensor LeakyRelu(Tensor X, float alpha)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Less(Tensor, Tensor)
Less
Declaration
public override Tensor Less(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
LessEqual(Tensor, Tensor)
Less or equal
Declaration
public override Tensor LessEqual(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
LogicalAnd(Tensor, Tensor)
And
Declaration
public override Tensor LogicalAnd(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
LogicalNot(Tensor)
Not
Declaration
public override Tensor LogicalNot(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | Tensor with !x values |
Overrides
LogicalOr(Tensor, Tensor)
Or
Declaration
public override Tensor LogicalOr(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
LogicalXor(Tensor, Tensor)
Xor
Declaration
public override Tensor LogicalXor(Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with |
Overrides
MatMul(Tensor, bool, Tensor, bool)
Simple 2D matrix multiplication O = X
⨯ Y
Declaration
public override Tensor MatMul(Tensor X, bool xTranspose, Tensor Y, bool yTranspose)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X | left Tensor |
bool | xTranspose |
|
Tensor | Y | right Tensor |
bool | yTranspose |
|
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Max(Tensor[])
Max
Declaration
public override Tensor Max(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
MaxPool2D(Tensor, int[], int[], int[])
2D max pooling
Declaration
public override Tensor MaxPool2D(Tensor X, int[] pool, int[] stride, int[] pad)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Min(Tensor[])
Min
Declaration
public override Tensor Min(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Mul(Tensor[])
Multiply tensors together
Declaration
public override Tensor Mul(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Neg(Tensor)
Neg
Declaration
public override Tensor Neg(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
PRelu(Tensor, Tensor)
PReLU
Declaration
public override Tensor PRelu(Tensor X, Tensor S)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Pin(Tensor, bool)
Pin specified Tensor
to unsafe array based CPU device, if uploadCache
is false, data is not uploaded to device
Declaration
public static UnsafeArrayTensorData Pin(Tensor X, bool uploadCache = true)
Parameters
Returns
Type | Description |
---|---|
Unsafe |
|
Prepare(Tensor)
Prepares tensor for use
Declaration
public override Tensor Prepare(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | Tensor |
Overrides
PrepareNoAlloc(Tensor)
Prepares tensor for use without uploading internal data to device
Declaration
public override Tensor PrepareNoAlloc(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | Tensor |
Overrides
Relu(Tensor)
ReLU
Declaration
public override Tensor Relu(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Relu6(Tensor)
ReLU capped to 6
Declaration
public override Tensor Relu6(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
ScaleBias(Tensor, Tensor, Tensor)
Scale bias o = s * x + b, element wise
Declaration
public override Tensor ScaleBias(Tensor X, Tensor S, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Sigmoid(Tensor)
Sigmoid
Declaration
public override Tensor Sigmoid(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Sign(Tensor)
Sign
Declaration
public override Tensor Sign(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | Tensor with 1 if x > 0 -1 if < 0 and 0 if == 0 values |
Overrides
Sin(Tensor)
Sin
Declaration
public override Tensor Sin(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Sinh(Tensor)
Sinh
Declaration
public override Tensor Sinh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Softplus(Tensor)
Softplus
Declaration
public override Tensor Softplus(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Sqrt(Tensor)
Sqrt
Declaration
public override Tensor Sqrt(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Sub(Tensor[])
Subtract tensors o = tensors[0] - tensors[1] - ... - tensors[N-1]
Declaration
public override Tensor Sub(Tensor[] tensors)
Parameters
Type | Name | Description |
---|---|---|
Tensor[] | tensors | input tensors |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Swish(Tensor)
Swish
Declaration
public override Tensor Swish(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Tan(Tensor)
Tan
Declaration
public override Tensor Tan(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Tanh(Tensor)
Tanh
Declaration
public override Tensor Tanh(Tensor X)
Parameters
Type | Name | Description |
---|---|---|
Tensor | X |
Returns
Type | Description |
---|---|
Tensor | output Tensor |
Overrides
Where(Tensor, Tensor, Tensor)
Where
Declaration
public override Tensor Where(Tensor C, Tensor A, Tensor B)
Parameters
Returns
Type | Description |
---|---|
Tensor | Tensor with values |