diff --git a/inference-engine/cmake/vpu_dependencies.cmake b/inference-engine/cmake/vpu_dependencies.cmake index c03ad6efa29..3cfa038f63d 100644 --- a/inference-engine/cmake/vpu_dependencies.cmake +++ b/inference-engine/cmake/vpu_dependencies.cmake @@ -19,7 +19,7 @@ set(VPU_SUPPORTED_FIRMWARES usb-ma2x8x pcie-ma248x) # Default packages # -set(FIRMWARE_PACKAGE_VERSION 1460) +set(FIRMWARE_PACKAGE_VERSION 1468) set(VPU_CLC_MA2X8X_VERSION "movi-cltools-20.09.2") # diff --git a/inference-engine/src/vpu/graph_transformer/include/vpu/middleend/pass_manager.hpp b/inference-engine/src/vpu/graph_transformer/include/vpu/middleend/pass_manager.hpp index 382f03f0072..c6468c2c2a9 100644 --- a/inference-engine/src/vpu/graph_transformer/include/vpu/middleend/pass_manager.hpp +++ b/inference-engine/src/vpu/graph_transformer/include/vpu/middleend/pass_manager.hpp @@ -93,7 +93,6 @@ public: // Model common adaptation // - Pass::Ptr decomposeSwish(); Pass::Ptr eliminateConstConcat(); Pass::Ptr splitGroupedConv(); Pass::Ptr splitConv3DInto2D(); diff --git a/inference-engine/src/vpu/graph_transformer/src/middleend/pass_manager.cpp b/inference-engine/src/vpu/graph_transformer/src/middleend/pass_manager.cpp index 8b529016409..738044bc9fa 100644 --- a/inference-engine/src/vpu/graph_transformer/src/middleend/pass_manager.cpp +++ b/inference-engine/src/vpu/graph_transformer/src/middleend/pass_manager.cpp @@ -87,12 +87,6 @@ PassSet::Ptr PassManager::buildMiddleEnd() { // initial dump pass must be the first dump ADD_DUMP_PASS("initial"); - // - // Decompose swish layer to Sigmoid + Multiply - // - ADD_PASS(decomposeSwish); - ADD_DUMP_PASS("decomposeSwish"); - // // Convert shape notation // diff --git a/inference-engine/src/vpu/graph_transformer/src/middleend/passes/decompose_swish.cpp b/inference-engine/src/vpu/graph_transformer/src/middleend/passes/decompose_swish.cpp deleted file mode 100644 index 95bfe5cbbc4..00000000000 --- a/inference-engine/src/vpu/graph_transformer/src/middleend/passes/decompose_swish.cpp +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (C) 2018-2020 Intel Corporation -// SPDX-License-Identifier: Apache-2.0 -// - -#include -#include - -namespace vpu { - -namespace { - -class PassImpl final : public Pass { -public: - explicit PassImpl(const StageBuilder::Ptr& stageBuilder) : - _stageBuilder(stageBuilder) { - } - - void run(const Model& model) override; - -private: - StageBuilder::Ptr _stageBuilder; -}; - -void PassImpl::run(const Model& model) { - VPU_PROFILE(decomposeSwish); - - for (const auto& swish : model->getStages()) { - if (swish->type() != StageType::Swish) { - continue; - } - const auto inputData = swish->input(0); - const auto outputData = swish->output(0); - const auto name = swish->name(); - const auto& layer = swish->origLayer(); - const auto beta = swish->attrs().get("beta"); - - model->removeStage(swish); - auto sigmoidInput = inputData; - - if (beta != 1.0f) { - const auto betaDesc = DataDesc(inputData->desc()); - const auto betaConst = model->addConstData(inputData->name() + "@beta", betaDesc, - replicateContent(beta, betaDesc.totalDimSize(), betaDesc)); - const auto prodOutput = model->addNewData(inputData->name() + "@prod-x-beta", inputData->desc()); - _stageBuilder->addProdStage( - model, - name + "@prod-x-beta", - layer, - inputData, - betaConst, - prodOutput); - sigmoidInput = prodOutput; - } - const auto sigmoidDesc = inputData->desc(); - const auto sigmoidOutput = model->addNewData(inputData->name() + "@sigmoid", sigmoidDesc); - - _stageBuilder->addSigmoidStage( - model, - name + "@sigmoid", - layer, - {sigmoidInput}, - {sigmoidOutput}); - _stageBuilder->addProdStage( - model, - name + "@prod", - layer, - inputData, - sigmoidOutput, - outputData); - } -} - -} // namespace - -Pass::Ptr PassManager::decomposeSwish() { - return std::make_shared(_stageBuilder); -} - -} // namespace vpu diff --git a/inference-engine/src/vpu/graph_transformer/src/stages/swish.cpp b/inference-engine/src/vpu/graph_transformer/src/stages/swish.cpp index e64e0b68dc4..d5b0418bca6 100644 --- a/inference-engine/src/vpu/graph_transformer/src/stages/swish.cpp +++ b/inference-engine/src/vpu/graph_transformer/src/stages/swish.cpp @@ -23,6 +23,10 @@ private: serializer.append(static_cast(beta)); } + + StageSHAVEsRequirements getSHAVEsRequirementsImpl() const override { + return StageSHAVEsRequirements::NeedMax; + } }; } // namespace