diff options
author | Georgios Pinitas <georgios.pinitas@arm.com> | 2018-02-15 12:29:44 +0000 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-11-02 16:47:18 +0000 |
commit | 57c033bb5400ef19e5952f191da3e878e21bba91 (patch) | |
tree | b325e4a0beba35bcdf29c4ae6dea874d7cd26b9f /src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp | |
parent | 02ee4291795f64fb510a71c6c754671438635186 (diff) | |
download | ComputeLibrary-57c033bb5400ef19e5952f191da3e878e21bba91.tar.gz |
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 <bsgcomp@arm.com>
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Diffstat (limited to 'src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp')
-rw-r--r-- | src/runtime/NEON/functions/NEBatchNormalizationLayer.cpp | 21 |
1 files changed, 3 insertions, 18 deletions
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(); - } } |