From 57c033bb5400ef19e5952f191da3e878e21bba91 Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Thu, 15 Feb 2018 12:29:44 +0000 Subject: COMPMID-906: Use fused activation in NEON Batch normalization Change-Id: I5a6413548b2c9b8972c91ddba57395509dffd87e Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/120656 Tested-by: Jenkins Reviewed-by: Anthony Barbier --- .../NEON/functions/NEBatchNormalizationLayer.cpp | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp') diff --git a/src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp b/src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp index b3753e842d..bb224db163 100644 --- a/src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp +++ b/src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp @@ -33,40 +33,25 @@ using namespace arm_compute; NEBatchNormalizationLayer::NEBatchNormalizationLayer() - : _norm_kernel(), _act_func(), _act_info_enabled(false) + : _norm_kernel() { } void NEBatchNormalizationLayer::configure(ITensor *input, ITensor *output, const ITensor *mean, const ITensor *var, const ITensor *beta, const ITensor *gamma, float epsilon, ActivationLayerInfo act_info) { - _act_info_enabled = act_info.enabled(); - // Configure kernel - _norm_kernel.configure(input, output, mean, var, beta, gamma, epsilon); - if(_act_info_enabled) - { - _act_func.configure(output, nullptr, act_info); - } + _norm_kernel.configure(input, output, mean, var, beta, gamma, epsilon, act_info); } Status NEBatchNormalizationLayer::validate(const ITensorInfo *input, const ITensorInfo *output, const ITensorInfo *mean, const ITensorInfo *var, const ITensorInfo *beta, const ITensorInfo *gamma, float epsilon, ActivationLayerInfo act_info) { - ARM_COMPUTE_RETURN_ON_ERROR(NEBatchNormalizationLayerKernel::validate(input, output, mean, var, beta, gamma, epsilon)); - if(act_info.enabled()) - { - ARM_COMPUTE_RETURN_ON_ERROR(NEActivationLayer::validate(output, nullptr, act_info)); - } - + ARM_COMPUTE_RETURN_ON_ERROR(NEBatchNormalizationLayerKernel::validate(input, output, mean, var, beta, gamma, epsilon, act_info)); return Status{}; } void NEBatchNormalizationLayer::run() { NEScheduler::get().schedule(&_norm_kernel, Window::DimY); - if(_act_info_enabled) - { - _act_func.run(); - } } -- cgit v1.2.1