diff options
author | Michele Di Giorgio <michele.digiorgio@arm.com> | 2021-07-28 14:10:47 +0100 |
---|---|---|
committer | Georgios Pinitas <georgios.pinitas@arm.com> | 2021-07-28 16:31:53 +0000 |
commit | a86433a64ab25c2ea8e274bd2f357a9709636f5b (patch) | |
tree | 48978522014f8d0423522ec37f2d491bee110944 /arm_compute | |
parent | 120c87b1622fa2472d27e43e5b7d861fb9735d9c (diff) | |
download | ComputeLibrary-a86433a64ab25c2ea8e274bd2f357a9709636f5b.tar.gz |
Reduce binary footprint of CpuConvertFullyConnectedWeightsKernel
Binary size reduction for this kernel is almost 50%.
Also remove unused NEConvertFullyConnectedWeightsManaged.
Change-Id: Ia46a1342a0737397b4aac2578d963c2ebb7446e3
Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/6011
Reviewed-by: Giorgio Arena <giorgio.arena@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute')
-rw-r--r-- | arm_compute/runtime/NEON/functions/NEConvertFullyConnectedWeights.h | 45 |
1 files changed, 3 insertions, 42 deletions
diff --git a/arm_compute/runtime/NEON/functions/NEConvertFullyConnectedWeights.h b/arm_compute/runtime/NEON/functions/NEConvertFullyConnectedWeights.h index 218877d421..a892d3036b 100644 --- a/arm_compute/runtime/NEON/functions/NEConvertFullyConnectedWeights.h +++ b/arm_compute/runtime/NEON/functions/NEConvertFullyConnectedWeights.h @@ -25,13 +25,14 @@ #define ARM_COMPUTE_NECONVERTFULLYCONNECTEDWEIGHTS_H #include "arm_compute/runtime/IFunction.h" -#include "arm_compute/runtime/ITransformWeights.h" -#include "arm_compute/runtime/Tensor.h" + +#include "arm_compute/core/Types.h" namespace arm_compute { // Forward declarations class ITensor; +class ITensorInfo; /** Basic function to run @ref cpu::kernels::CpuConvertFullyConnectedWeightsKernel. */ class NEConvertFullyConnectedWeights : public IFunction @@ -84,45 +85,5 @@ private: struct Impl; std::unique_ptr<Impl> _impl; }; - -namespace weights_transformations -{ -/** Basic function to manage @ref NEConvertFullyConnectedWeights. */ -class NEConvertFullyConnectedWeightsManaged : public ITransformWeights -{ -public: - void run() override - { - _output.allocator()->allocate(); - _func.run(); - _reshape_run = true; - } - - void release() override - { - _output.allocator()->free(); - } - - ITensor *get_weights() override - { - return &_output; - } - - uint32_t uid() override - { - return _uid; - } - - void configure(const ITensor *input, const TensorShape &original_input_shape, DataLayout data_layout) - { - _func.configure(input, &_output, original_input_shape, data_layout); - } - -private: - static constexpr uint32_t _uid = 0x4; - Tensor _output{}; - NEConvertFullyConnectedWeights _func{}; -}; -} // namespace weights_transformations } // namespace arm_compute #endif /* ARM_COMPUTE_NECONVERTFULLYCONNECTEDWEIGHTS_H */ |