| 48 | } |
| 49 | |
| 50 | void CpuDirectConv3d::configure( |
| 51 | ITensorInfo *src0, ITensorInfo *src1, const ITensorInfo *src2, ITensorInfo *dst, const Conv3dInfo conv_info) |
| 52 | { |
| 53 | ARM_COMPUTE_TRACE_EVENT(ARM_COMPUTE_PROF_CAT_CPU, ARM_COMPUTE_PROF_LVL_CPU, "CpuDirectConv3d::configure"); |
| 54 | ARM_COMPUTE_LOG_PARAMS(src0, src1, src2, dst, conv_info); |
| 55 | ARM_COMPUTE_ERROR_ON(src0->data_layout() != DataLayout::NDHWC); |
| 56 | |
| 57 | _conv_kernel = std::make_unique<kernels::CpuDirectConv3dKernel>(); |
| 58 | |
| 59 | // Free accumulator |
| 60 | if (_accumulator.buffer() != nullptr) |
| 61 | { |
| 62 | _accumulator.allocator()->free(); |
| 63 | } |
| 64 | |
| 65 | _dim_split = Window::DimY; |
| 66 | |
| 67 | _conv_kernel->configure(src0, src1, src2, dst, conv_info); |
| 68 | |
| 69 | //Configure Activation Layer |
| 70 | _is_activationlayer_enabled = conv_info.act_info.enabled(); |
| 71 | if (_is_activationlayer_enabled) |
| 72 | { |
| 73 | _activationlayer_function = std::make_unique<CpuActivation>(); |
| 74 | _activationlayer_function->configure(dst, dst, conv_info.act_info); |
| 75 | } |
| 76 | } |
| 77 | |
| 78 | Status CpuDirectConv3d::validate(const ITensorInfo *src0, |
| 79 | const ITensorInfo *src1, |
nothing calls this directly
no test coverage detected