24.07
|
Basic function to compute the convolution3d layer. More...
#include <CLConv3D.h>
Public Member Functions | |
CLConv3D () | |
Construtor. More... | |
~CLConv3D () | |
Destructor. More... | |
CLConv3D (const CLConv3D &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
CLConv3D (CLConv3D &&)=default | |
Default move constructor. More... | |
CLConv3D & | operator= (const CLConv3D &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
CLConv3D & | operator= (CLConv3D &&)=default |
Default move assignment operator. More... | |
void | configure (const CLCompileContext &compile_context, const ICLTensor *src, const ICLTensor *weights, const ICLTensor *biases, ICLTensor *dst, const Conv3dInfo &conv3d_info) |
Set the src and dst tensors. More... | |
void | configure (const ICLTensor *src, const ICLTensor *weights, const ICLTensor *biases, ICLTensor *dst, const Conv3dInfo &conv3d_info) |
Set the src and dst tensors. More... | |
void | run () override |
Run the kernels contained in the function. More... | |
Public Member Functions inherited from IFunction | |
virtual | ~IFunction ()=default |
Destructor. More... | |
virtual void | prepare () |
Prepare the function for executing. More... | |
Static Public Member Functions | |
static Status | validate (const ITensorInfo *src, const ITensorInfo *weights, const ITensorInfo *biases, const ITensorInfo *dst, const Conv3dInfo &conv3d_info) |
Static function to check if given info will lead to a valid configuration of CLConv3D. More... | |
Basic function to compute the convolution3d layer.
This function calls the following OpenCL kernels/functions:
Definition at line 43 of file CLConv3D.h.
CLConv3D | ( | ) |
Construtor.
Definition at line 43 of file CLConv3D.cpp.
|
default |
Destructor.
Prevent instances of this class from being copied (As this class contains pointers)
void configure | ( | const CLCompileContext & | compile_context, |
const ICLTensor * | src, | ||
const ICLTensor * | weights, | ||
const ICLTensor * | biases, | ||
ICLTensor * | dst, | ||
const Conv3dInfo & | conv3d_info | ||
) |
Set the src and dst tensors.
Valid data layouts:
Valid data type configurations:
src0 | src1 | src2 | dst |
---|---|---|---|
F16 | F16 | F16 | F16 |
F32 | F32 | F32 | F32 |
QASYMM8 | QASYMM8 | S32 | QASYMM8 |
QASYMM8_SIGNED | QASYMM8_SIGNED | S32 | QASYMM8_SIGNED |
[in] | compile_context | The compile context to be used. |
[in] | src | Source tensor. 4 lower dimensions represent a single src [IFM, width, height, depth], while every optional dimension from 5 and above represent a batch of srcs. |
[in] | weights | Weights tensor. Weights are 5D tensor with dimensions [OFM, IFM, kernel_w, kernel_h, kernel_d]. |
[in] | biases | Biases tensor. Shared biases supported. Biases are 1D tensor with dimensions [OFM]. |
[out] | dst | Destination tensor. 4 lower dimensions represent a single dst [OFM, width, height, depth], while the rest represent batch of dsts. |
[in] | conv3d_info | Contains strides, padding, rounding, activation, dilation and fast math information. Activation and fast math are currently unused. |
Definition at line 58 of file CLConv3D.cpp.
References ARM_COMPUTE_ERROR_ON_NULLPTR, ARM_COMPUTE_ERROR_THROW_ON, arm_compute::test::validation::dst, ITensor::info(), arm_compute::test::validation::src, and CLConv3D::validate().
Referenced by CLConv3D::configure().
void configure | ( | const ICLTensor * | src, |
const ICLTensor * | weights, | ||
const ICLTensor * | biases, | ||
ICLTensor * | dst, | ||
const Conv3dInfo & | conv3d_info | ||
) |
Set the src and dst tensors.
Similar to CLConv3D::configure() but using the default compile context
Definition at line 49 of file CLConv3D.cpp.
References CLConv3D::configure(), arm_compute::test::validation::dst, CLKernelLibrary::get(), and arm_compute::test::validation::src.
Prevent instances of this class from being copied (As this class contains pointers)
|
overridevirtual |
Run the kernels contained in the function.
For CPU kernels:
For OpenCL kernels:
Implements IFunction.
Definition at line 88 of file CLConv3D.cpp.
References arm_compute::ACL_DST, arm_compute::ACL_SRC_0, arm_compute::ACL_SRC_1, arm_compute::ACL_SRC_2, ITensorPack::add_tensor(), and arm_compute::test::validation::pack.
|
static |
Static function to check if given info will lead to a valid configuration of CLConv3D.
Similar to CLConv3D::configure()
Definition at line 79 of file CLConv3D.cpp.
References arm_compute::test::validation::dst, arm_compute::test::validation::src, and ClDirectConv3d::validate().
Referenced by CLConv3D::configure().