|
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().