35 const ICLTensor *
src{
nullptr };
36 const ICLTensor *weights{
nullptr };
37 const ICLTensor *biases{
nullptr };
38 ICLTensor *
dst{
nullptr };
39 std::unique_ptr<opencl::ClDirectConv3d> op{
nullptr };
43 : _impl(
std::make_unique<Impl>())
60 _impl->weights = weights;
61 _impl->biases = biases;
64 _impl->op = std::make_unique<opencl::ClDirectConv3d>();
65 _impl->op->configure(compile_context, _impl->src->info(), _impl->weights->info(), _impl->biases ? _impl->biases->info() :
nullptr, _impl->dst->info(), conv3d_info);
Descriptor used by the 3d Convolution function.
static CLKernelLibrary & get()
Access the KernelLibrary singleton.
Store the tensor's metadata.
#define ARM_COMPUTE_ERROR_THROW_ON(status)
void run() override
Run the kernels contained in the function.
SimpleTensor< float > src
Copyright (c) 2017-2022 Arm Limited.
static Status validate(const ITensorInfo *src0, const ITensorInfo *src1, const ITensorInfo *src2, const ITensorInfo *dst, const Conv3dInfo &conv3d_info)
Static function to check if given info will lead to a valid configuration.
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.
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.
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
Interface for OpenCL tensor.
#define ARM_COMPUTE_ERROR_ON_NULLPTR(...)
void add_tensor(int id, ITensor *tensor)
Add tensor to the pack.