Commit Graph

129 Commits

Author SHA1 Message Date
Ilya Lavrenov bc36425381
Added suggest-override flag (#6631) 2021-07-16 18:55:05 +03:00
George Zlobin 3d13424e42
[IE][VPU]: Completion of Configuration options refactoring in VPU plugins (#6176)
* [IE][VPU]: Refactors PROTOCOL configuration option

* [IE][VPU]: Refactors POWER_CONFIG configuration option

* [IE][VPU]: Refactors HW_OPTIMIZATION configuration option

* [IE][VPU]: Refactors HW_EXTRA_SPLIT configuration option

* [IE][VPU]: Refactors HW_BLACK_LIST configuration option

* [IE][VPU]: Refactors TILING_CMX_LIMIT_KB configuration option

* [IE][VPU]: Refactors WATCHDOG_INTERVAL configuration option

* [IE][VPU]: Refactors PRINT_RECEIVE_TENSOR_TIME configuration option

* [IE][VPU]: Refactors PERF_REPORT_MODE configuration option

* [IE][VPU]: Refactors PERF_COUNT configuration option

* [IE][VPU]: Refactors PACK_DATA_IN_CMX configuration option

* [IE][VPU]: Refactors NUMBER_OF_SHAVES configuration option

* [IE][VPU]: Refactors NUM_EXECUTORS configuration option

* [IE][VPU]: Refactors NUM_CMX_SLICES configuration option

* [IE][VPU]: Refactors HW_POOL_CONV_MERGE configuration option

* [IE][VPU]: Refactors TENSOR_STRIDES configuration option

* [IE][VPU]: Refactors INJECT_SW_OPS configuration option

* [IE][VPU]: Refactors IGNORE_UNKNOWN_LAYERS configuration option

* [IE][VPU]: Remove HW_WHITE_LIST configuration option

* [IE][VPU]: Refactors HW_DILATION configuration option

* [IE][VPU]: Refactors FORCE_PURE_TENSOR_ITERATOR configuration option

* [IE][VPU]: Remove FORCE_DEPRECATED_CNN_CONVERSION configuration option

* [IE][VPU]: Refactors EXCLUSIVE_ASYNC_REQUESTS configuration option

* [IE][VPU]: Refactors ENABLE_WEIGHTS_ANALYSIS configuration option

* [IE][VPU]: Refactors ENABLE_TENSOR_ITERATOR_UNROLLING configuration option

* [IE][VPU]: Refactors ENABLE_REPL_WITH_SCRELU configuration option

* [IE][VPU]: Remove ENABLE_REPLACE_WITH_REDUCE_MEAN configuration option

* [IE][VPU]: Refactors ENABLE_PERMUTE_MERGING configuration option

* [IE][VPU]: Refactors ENABLE_MEMORY_TYPES_ANNOTATION configuration options

* [IE][VPU]: Refactors DUMP_INTERNAL_GRAPH_FILE_NAME configuration options

* [IE][VPU]: Refactors DUMP_ALL_PASSES_DIRECTORY configuration options

* [IE][VPU]: Refactors DUMP_ALL_PASSES configuration options

* [IE][VPU]: Refactors DISABLE_REORDER configuration option

* [IE][VPU]: Refactors DISABLE_CONVERT_STAGES configuration option

* [IE][VPU]: Refactors DEVICE_ID configuration option

* [IE][VPU]: Refactors DEVICE_CONNECT_TIMEOUT configuration option

* [IE][VPU]: Refactors DETECT_NETWORK_BATCH configuration option

* [IE][VPU]: Refactors CUSTOM_LAYERS configuration option

* [IE][VPU]: Refactors MEMORY_TYPE configuration option

* [IE][VPU]: Refactors FORCE_RESET configuration option

* [IE][VPU]: Refactors PLATFORM configuration options

* [IE][VPU]: Remove PLUGIN_LOG_FILE_PATH configuration options

* [IE][VPU]: Remove COMPILER_LOG_FILE_PATH configuration options

* [IE][VPU]: Refactors CHECK_PREPROCESSING_INSIDE_MODEL configuration option

* [IE][VPU]: Refactors ENABLE_EARLY_ELTWISE_RELU_FUSION configuration option

* [IE][VPU]: Refactors ENABLE_CUSTOM_RESHAPE_PARAM configuration option

* [IE][VPU]: Refactors NONE_LAYERS configuration option

* [IE][VPU]: Remove INPUT_SCALE and INPUT_BIAS configuration option

* [IE][VPU]: Refactors ENABLE_ASYNC_DMA configuration options

* [IE][VPU]: Delete old configuration API
2021-07-13 16:58:25 +03:00
Ilya Lavrenov fc7f80a34e
CVS-34900: updated pugixml to v1.11.4 (#6301)
* Added pugixml as submodule

* CVS-34900: updated pugixml to v1.11.4

* Fixed link with pugixml

* USe pugixml::static

* Try to fix bug

* Removed GITHUB_PULL_REQUEST

* Replaced  OpenVINO_MAIN_SOURCE_DIR -> OpenVINO_SOURCE_DIR

* Removed some usages of IE_MAIN_SOURCE_DIR

* Use ngraph target directly
2021-07-02 11:36:31 +03:00
Ilya Lavrenov 07f94ea602
Minimized usage of `IE_MAIN_SOURCE_DIR` (#6422)
* Minimized IE_MAIN_SOURCE_DIR hardcode

* Used COMPILE_OPTIONS instead of COMPILE_FLAGS

* Fixed compilation

* Enabled NGRAPH_DYNAMIC_COMPONENTS_ENABLE by default

* Fixes

* Moved GNA related file

* Fixed backend compilation

* Fixed Windows for ngraph

* Fixed <root>/tests build

* More updates

* Fixed scripts install

* Fixed Windows

* Fixed Windows
2021-06-30 18:15:41 +03:00
Shoujiang Ma 3aa5413363
[AUTO] AUTO inferences with CPU while the actual accelerator loads the network (#5944)
* DRAFT: hot-swap async request (when VPU or other acceleratore finally loaded)

* DRAFT2: communicating the hot-swap back to the AutoExecNetwork, added logic for blobs (and keeping them internally to the AutoRequest), added lot's of comments for fixme (items to close the semantics and behaviour)

* Rebase/refactor code and fix tests issue

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Fix logic for AutoExecutableNetwork

1. force loadNetwork in parallel by std::launch::async
2. address some fixme in auto_exec_network.cpp
3. capture by reference

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Fix core dump

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Lambda explicit capture by value

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Add debug log to detect destory order of plugin and core

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Use sync to load cpu and gpu to check ci

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Revert "Use sync to load cpu and gpu to check ci"

This reverts commit 66e09ccd47321e26f68392976d59b1e69cd3df1a.

* Copy network in lambda

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Try to fix CanCreateInferRequest test in Centos

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Remove print log

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Fix CI issues in AUTO because GPU execNetwork doesn't support SetConfig

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* Address reviewer's comment: handle load network failure

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

* weak_ptr rather than plain ICore* to make sure we hold the Core (whihc holds the plugins in turn) from the destruction in case we need that

* Replace ie::ICore* to shared_ptr<ie::ICore>

Signed-off-by: Shoujiang Ma <shoujiang.ma@intel.com>

Co-authored-by: myshevts <maxim.y.shevtsov@intel.com>
2021-06-29 15:54:40 +03:00
Ilya Lavrenov 391aeebf7e
Added install rules for tests (#6344)
* Moved cmake/templates to <root>

* Removed ngraph versioning, reused IE one

* Merged converage

* Removed duplicatde ngraph cmake options

* Moved dependencies to <root>/cmake

* Removed installing of VERSION

* Start #1

* cpack

* Added component type

* Added installation of tests targets

* Added ngraph tests target install

* Fixed runtime dependencies location

* Disable GNA unit tests

* Revert "Disable GNA unit tests"

This reverts commit da5398622f.

* Installed only core component

* Replaced ENABLE_DEV_PKG_INSTALL with EXCLUDE_FROM_ALL

* Removed extra cmake options
2021-06-25 15:17:17 +03:00
Nadezhda Ageeva 3307b1f17c
[GNA]: Cleanup policy (#6216) 2021-06-23 11:20:20 +03:00
Ilya Lavrenov fa2f9c5201
Migrated to official GoogleTest repo (#6286)
* Move gtest to <root>/wqthirdparty

* Fixed inference engine tests

* Fixed unit-tests

* Fixed GPU

* Fixed clDNN_unit_tests compilation

* Reverted ngraph changes

* Fixed VPU tests

* Fixed deprecated tests compilation

* Removed OpenVINO clone

* Added public submodule

* Removed

* Fixed Windows

* More updates for INSTANTIATE_TEST_SUITE_P

* Use release-1.10.0

* Removed ngraph copy of gtest

* Revert "Removed ngraph copy of gtest"

This reverts commit ec9fe08d79.

* Fixes for TYPED_TEST_CASE

* Fixed GNA tests

* Updated submodule

* Updaed index

* TMP disabled tests

* Revert changes and fix compilation errors

* Fixed caching tests

* Revert back

* Revert back all

Co-authored-by: Michael Nosov <mikhail.nosov@intel.com>
2021-06-22 17:39:39 +03:00
Gladilov, Gleb e61a594199
[IE][VPU]: Configuration options in VPU plugins refactoring (#3211)
* [IE]: Enables Abstract class -> Parameter conversion support

Parameter has templated constructor allowing to write code

```
Parameter p = i; // i of type int for example
```

This constructor uses SFINAE to resolve ambiguity with
move-constructor, so checks that argument is not of the same type.
In case it's not the same type it calls std::tuple constructors that
constructs an instance of argument type. In the following case:

```
Parameter p = static_cast<Parameter>(abstractRef);
// abstractRef is a reference to abstract class
```

We have a reference to some abstract class that defines explicit
cast operator to Parameter. In contrast with expectations,
instead of cast operator, Parameter constructor is instantiated,
since template type deduction for Parameter constructor didn't fail
(abstract class has not the same type as Parameter). Instantiation
of tuple constructor used inside failed: it's impossible to create an
instance of abstract class what lead to compile-time error. To resolve
the issue additional condition introduced to check if argument type is
abstract.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE]: Enables PrintTo method for Parameter and tests on it

Inference Engine API for configuration options uses Parameter
type as a return type of GetConfig method. Parameter is intended
to store object associated with configuration option.
To support objects of different types its constructor is templated.
Parameter overloads cast operators which are templated
as well. Both constructor and cast operators are implicit, which
makes it possible to implicitly convert any type to Parameter
and vice versa.

Since Parameter is a part of Inference Engine configuration API it's
essential google tests on API contain Parameter as tests parameter.
For each test parameter Google Test framework tries to print it to
an output stream. For that purpose, Google Test checks if test
parameter has output stream operator or PrintTo method. If not, it
checks if it could be implicitly converted to integral type and,
in this case, prints it as a long integer.

InferenceEngine::Parameter does not define output stream operator,
but could be implicitly converted to an integer, according cast
operators mentioned above, so Google Test tries to convert to
integer. Since Parameter not necessarily contains integer, this
conversion throws an exception of type mismatch, which makes it
impossible to use Parameter in Google Test framework as is.

In order to resolve that issue Parameter should define either
output stream operator or PrintTo method. If Parameter will
define output stream operator it will make it possible to compile
streaming almost any object to an output stream. The reason for it
is C++ checks if object could be implicitly converted to other type
which defines output stream operator, if objects itself doesn't do it
(e.g. `stream << "text";` calls std::string::operator<<, since
char const* is implicitly convertible to std::string).

Taking this into consideration the only way to support Parameter in
Google Test without breaking backward compatibility is define PrintTo
method.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE]: Fixes ill-formed extending std names

According to the standard:

The behavior of a C++ program is undefined if
it adds declarations or definitions to namespace
std or to a namespace within namespace std unless
otherwise specified. A program may add a template
specialization for any standard library template
to namespace std only if the declaration depends
on a user-defined type and the specialization meets
the standard library requirements for the original
template and is not explicitly prohibited.

As as an unexpected result, InferenceEngine::Parameter
that contains std::vector<std::string> can be printed
via PrintTo. In that case operator<< version from
Inference Engine is picked up.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Moves CompilationConfig out of GT header

Keeping config in a separate header simplifies migration
to new interface.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Removes Platform enum

Since there is enum from MVNC for the same purpose
there is no need in Platform anyway

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Introduces containers utility header

Contains some helpers to work with C++ maps

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Introduces new configuration API

The main ideas are separate option-specific logic
from common container, automate logic processing
public vs private, deprecated, compile-time vs
runtime-time options and remove code duplication.

Since IE defines configuration API using std::string
and Parameter, options have to provide ways to be
represented as Parameter (ex.: GetConfig is called)
and be defined using std::string (ex.: SetConfig is
called). Keeping information about actual key value
is useful for error reporting.

New API fallbacks to previous version in case of
unsupported options are requested. This way migration
becomes iterative and looks simpler.

Options containers are related to corresponding components:
CompilationConfig (name to be changed) - GraphTransformer,
PluginConfiguration - base class for plugins configurations,
MyriadConfiguration - Myriad plugin configuration,
HDDLConfiguration - HDDL plugin configuration (to be
introduced in a separate request)

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Replaces CompilationConfig with PluginConfiguration

Some of options to be refactored are stored inside CompilationConfig.
CompilationConfig is passed to graph transformer as a compiler to be
processed. Since it's separate data structure and migration process
is iterative we need a mechanism to provide some of compilation
options from new interface and some from old. It cannot be done via
plugin specific class (MyriadConfiguration), since there are others
plugins as graph transformer users. Plugin specific class
(MyriadConfiguration) already inherits from old version (MyriadConfig),
which in turn inherits from ParsedConfig containing CompilationConfig.

To resolve the issue MyriadConfig inheritance from ParsedConfig is made
virtual to make it possible for PluginConfiguration to virtually inherit
from ParsedConfig as well an so make PluginConfiguration data structure
for configuration options for graph transformer. Since
PluginConfiguration is base class of MyriadConfiguration as well as
MyriadConfig and inheritance is virtual plugin just casts its specific
configuration to base one passing to graph transformer.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Enables new tests on configuration API

* Enables following new shared tests on configuration API
  * Can load network with empty configuration
  * Check default value for configuration option
  * Can load network with correct configuration
  * Check custom value for configuration option (set and compare)
  * Check public configuration options are visible through API
  * Check private configuration options are invisible through API
  * Check GetConfig throws an exception on incorrect key
* Refactors myriad plugin instantiations for shared tests

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Extracts LogLevel enum to a separate header

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Refactors LOG_LEVEL configuration option

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Refactors COPY_OPTIMIZATION configuration option

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Fixes behavior tests build

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Updates tests on new exception class

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Removes unused variable from mvnc test

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>

* [IE][VPU]: Removes SizeVector streaming call

New assertion macro IE_ASSERT implementation uses
output streaming operator with r-value reference
argument as a stream. This prevents the compiler
from picking up overload from InferenceEngine::details,
since our version takes stream by non-const l-value
reference.

Since there is no simple solution to provide output
streaming operator overload for r-value references as
well and this call is just a message for assert in
test utilities, it was decided just to remove call
for now.

Signed-off-by: Gladilov, Gleb <gleb.gladilov@intel.com>
2021-06-17 18:54:39 +03:00
Szymon Irzabek 0f6f09bd3d
Gna revert padded to valid convolution and 2d convolution decomposition transforms (#5941)
* Revert "Gna conv2d decompose (#5604)"

This reverts commit f6c3b90364.

* Revert "GNA padded2conv tests & fixes (#5589)"

This reverts commit 5db77bf9e6.
2021-06-02 11:07:40 +03:00
Elizaveta Lobanova ee368fb828
[GNA] Fixed errors about unsupported 1d tensors (#5667) 2021-05-21 18:55:59 +03:00
Szymon Irzabek f6c3b90364
Gna conv2d decompose (#5604)
* adding conv2d decomposition

* save point

* build of conv_2d factorization succeeds

* working 2d conv decomposing transform

* added pseudo code for handling larger kernels

* fix conv splitting due to size

* active work on convolution 1xK without dilation

* validated NHWC ordered networks with convolution kernel sizes:
3x3
3x1
5x1
1x5
1x3

TODO: 2d max pooling

* removed debug printouts

* fusing max pooling/bias/af when -disable_nhwc_to_nchw option is used

* code cleanup

* [GNA] Fixes for CI run

* [GNA] Add tests, fix transform

* [GNA] Fix padded2valid and conv2d decomposition coexistence

* [GNA] Temporarily disable tests due to mock call count issues

* [GNA] Split tests for different hw versions

Co-authored-by: prozen <piotr.rozen@intel.com>
2021-05-20 11:01:29 +03:00
Ilya Lavrenov f84b25722c
Removed legacy dependency on snippets (#5656) 2021-05-18 00:24:37 +03:00
Ilya Lavrenov c76c0eb39e
Moved ie_tests to legacy (#5561)
* Removed obsolete tests files

* Removed old SLT

* Moved ie_tests to legacy
2021-05-12 12:57:48 +03:00
Ilya Lavrenov 349e2910fe
Openvino autogenerated cmake (#5484)
* Exclude xbyak from install

* Added automatically generated InferenceEngineConfig.cmake

* Reverted a version back

* Fixed issues with target aliases

* Make TBB dependency private

* Made ie_parallel.cmake self-sufficient

* Don't expose ie_paralle.cmake to end users

* Fixed compilation with TBB

* Fixes for TBB

* Fixed vpu_graph_transformer compilation

* Fixed tests compilation

* Added install of ie_parallel.cmake

* Switched ENABLE_ALTERNATIVE_TEMP to OFF. Fixed COMPONENTS for TBB

* Fixed file name in install rules

* Added find_dependency for TBB in ie_parallel.cmake

* WA for cmake bug with PACKAGE_PREFIX_DIR

* Fixed no-deprecation to fix speech-library build

* Reverted version from 2.1.0 to 2.1

* Revert "Reverted version from 2.1.0 to 2.1"

This reverts commit 7cb5d1563c.

* Returned custom version file back

* Added InferenceEngineConfig-version.cmake to share as well

* Disabled one more GPU test

* Added one more WA for CI

* WA for CI issue for C API

* WIP
2021-05-07 11:57:51 +03:00
Szymon Irzabek ed255eee71
[GNA] Additional PWL segments are added to avoid saturation (#5399)
* [GNA] Additional PWL segments are added to avoid saturation

After design phase for PWL segments has finished,
additional segments are added to avoid saturation.

This commit also reduces the number of PWL segments created
for some layer types.

* [GNA] Make PWL unit tests take into account saturation errata
2021-05-07 11:13:05 +03:00
Gorokhov Dmitriy a19413c0c0
[CPU] Plugin migration on ngraph (#4344) 2021-05-06 19:49:24 +03:00
Ilya Churaev ff9e67e732
Skip MVN operation on constant branches (#5460)
* Skip MVN operation on constant branches

* Added test
2021-04-30 10:37:27 +03:00
Ilya Lavrenov c350f61a42
Move all base wrapper classes from Plugin API to source folder (#5419)
* Small refactoring in TEMPLATE plugin

* Fixed compilation on Windows

* Fixed code style

* Hide CALL_STATUS_FNC helpers to private API

* Moved some base classes to private place from plugin_api

* Updates for VariableState creation

* Take Jane's changes for Demension names

* Revert "Take Jane's changes for Demension names"

This reverts commit 9f6c8fa5a6.

* Removed ICNNNetwork include

* removed more icnnnetwork includes

* Added missed include with ie_input_info.hpp

* Fixed GNA plugin to provide names w/o \0
2021-04-29 19:50:46 +03:00
Mikhail Nosov 6624a77827
Disabled sporadically failed GNAAOTTests (#5455) 2021-04-29 14:10:21 +03:00
Mikhail Nosov 05cae2714f
Generate unique file names for GNAAOTTests (#5403)
Issue can be reproduced on stress testing:
Get stress scripts from git@github.com:google/gtest-parallel.git
> python3 <workdir>/gtest-parallel/gtest_parallel.py  ./InferenceEngineUnitTests --gtest_filter=*GNAAOT* -r 100

It starts each test separately in different threads/processes and there is big chance of conflicts with unit_tests.bin
2021-04-27 08:59:20 +03:00
Roman Donchenko ed5313b2e1
Fix common misspelling: wraper -> wrapper (#5355) 2021-04-26 13:42:12 +03:00
Alexandra Sidorova 0d3baee1f3
[CPU] [IE TESTS] Added improvements for DepthToSpace and SpaceToDepth (#3897) 2021-04-21 16:45:07 +03:00
Anton Pankratv 46987def54
Merged internal Infer Request implementation (#5125) 2021-04-19 15:16:47 +03:00
Alexandra Sidorova 37893caa36
[CPU] Added improvements for StridedSlice (#4248) 2021-04-08 13:17:29 +03:00
Anton Pankratv b20d9b725c
Used internal exec network impl (#4922) 2021-04-08 12:29:41 +03:00
Alexey Suhov a748c26fee
Align copyright notice in cpp and cmake source files (CVS-51320) (#4950) 2021-03-25 02:40:09 +03:00
Anton Pankratv 3b3d9a0989
Used IE_THROW macro (#4869)
* Added ie throw macro

* Used IE_THROW macro
2021-03-23 18:57:12 +03:00
Anton Pankratv a2b8b974b8
Simplified IE Exceptions Implementation (#4258) 2021-03-18 16:30:16 +03:00
Marina Kolpakova 6e490c24e2
[§] introduces snippets generator (#4349) 2021-03-10 14:15:38 +03:00
Anton Pankratv a5e2497788
Synchronous inference using stream executor affinity and parallelism constraints (#528)
* Syncronous inference using stream executor affinity and parallelizm constraints

* Fixed review coments
2021-03-09 20:32:14 +03:00
Anton Pankratv 2fcf92be42
Removed IRelease Interface (#4032) 2021-03-05 12:08:01 +03:00
Piotr Rozen bf467e097f
[GNA] Fixed issue with multiple connections between pair of nodes (Split=>Concat) (#3953)
* fixed: gna split-concat-concat sequence issue
fixed: gna permute-conv-maxpool-permute issue

* fix issue with multiple connections between split|crop|memory & concat
fix issue with serializing IR V7 model

* fixed: gna split-concat-concat sequence issue
fixed: gna permute-conv-maxpool-permute issue

* fix issue with multiple connections between split|crop|memory & concat
fix issue with serializing IR V7 model

* fixed issues after rebase

* Fix for the test TEST_F(FP32NonQuantizedTest, LSTMCellPropagateForward)

Input x[96] = 0.1
Scaled input = 0.01
Affine output = 64 * 0.01 * 0.1 + 0.1 = 0.164
Sigmoid(Affine output) = 0.541
Tanh(Affine output) = 0.163
Sigmoid(Affine output)*Tanh(Affine output) = 0.088

Sigmoid(Affine output)*Scaled input = 0.005

H = Sigmoid(Affine output)*Tanh(Affine output) + Sigmoid(Affine output)*Scaled input = 0.093
tanh(H) = 0.093

Result = H + Sigmoid(Affine output)*Scaled input = 0.093 + 0.541*0.093 = 0.093 + 0.050 = 0.143

* Updated copyright date

* [GNA] Added tests for cases connection split->concat

* [GNA] Added fix memory -> concat case

* fixed inf loop during quantization

* fixed code formatting

* fixed failing test smoke_concat_quant_memory_requant/ConcatQuantDuringMemoryRequantTest.CompareWithRefs/netPRC=FP16_IS=128_HS=128_targetDevice=GNA

* fixed removed & mark from pass manager main for loop

* added split=>concat case to InsertCopyLayerPass

Co-authored-by: Andrey Dmitriev <andrey.dmitriev@intel.com>
2021-03-03 12:54:09 +03:00
Ilya Lavrenov edbb802e55
Removed some legacy code (#4371) 2021-02-17 13:57:14 +03:00
Maksim Kutakov 24aeb16fd1
[CPU BF16] OneHot layer extended with bf16 support. (#4171) 2021-02-17 10:52:23 +03:00
Piotr Rozen 3f6dbb8a00
[GNA] 4D StridedSlice, Clamp, InsertIdentityLayerPass, SubstituteScaleShiftBroadCastPass fixes (#4061)
* fixed: StrideSlice/Crop was broken when crop axis != dim.size() - 1 & added support for tensor dim > 2
fixed: clamp had hard coded upper & lower boundary to -50/50
fixed: InsertIdentityLayerPass was adding not necessary identities that was leading to exception when 2 identities was added to convolution output
fixed: SubstituteScaleShiftBroadCastPass caused invalid input tensor dimension overwrite - instead of overwrite currently reshape is injected

* updated copyright header dates

* updated copyright date

* fixed braces not at the end of line

* fixed braces in if else sequence

* shortened line length

* fixed issues reported in review

* fixed test - model in test assumed clamped range <-5,5> however code had hard coded value <-50,50>, which test assumed as correct result

* fixed smoke_MemoryEltwiseReshapeConcatTest/MemoryEltwiseReshapeConcatTest

* [GNA] Added test for crop 4d

Co-authored-by: Andrey Dmitriev <andrey.dmitriev@intel.com>
2021-02-12 12:27:00 +03:00
Anton Pankratv 945da5ff4f
Removed template from base (#4045)
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2021-02-04 17:43:20 +03:00
Anton Pankratv 54c889f876
Implemented base cancelation implementation (#3805) 2021-02-04 11:19:44 +03:00
Chenhu Wang db84033aa8
[CPU] Introduced Load/Store emitters (#3567)
- Created emitters for jitted load and store and apply to MVN node
- MVN template function removed
- Optimized tiles processing in MVN node implementation
2021-02-04 10:21:26 +03:00
Anton Pankratv 0a63b9214a
Used std::string as API paramters (#4050) 2021-02-03 19:21:39 +03:00
Maksim Kutakov f0398212f8
[CPU] Split layer nspc -> ncsp special case put back. (#3839) 2021-02-02 15:40:50 +03:00
Gorokhov Dmitriy d58b4c65c8
[CPU] Plugin migration on oneDNN (v1.6) (#3725) 2021-01-26 16:31:10 +03:00
Ilya Lavrenov 8311b98222
Pre-deprecation of ICNNNetwork (#3887)
* Deprecated ICNNNetwork

* MKLDNN plugin: partially

* MYRIAD plugin: partially

* Fixed Myriad Plugin

* Improved GNA; fixed MKLDNN

* Fixed tests

* Fixed GNA

* Fixed unit tests linkage

* Removed ICNNNetwork from tests

* Removed obsolete tests
2021-01-25 14:09:03 +03:00
Ilya Lavrenov 9cfe909e1e
Unused variables (#3963)
* Added -Wused-variable flag

* Fixes for clang compiler

* Removed wrong -Wno-error from protobuf compilation

* More fixes
2021-01-22 17:41:15 +03:00
Krzysztof Bruniecki 00c57a3bdf
Enable CNN2D tests for GNa Lib 2.1.0.1048 (#3529)
Enable tests including rectangular kernel and multiple kernels
  Pad filters to 16B
  Fix style space after if before ( needed
  Fix PRETTY_FUNCTION double def
  Fix canMatchWith1AsyncThread
  Fix ifdefs for gna 2.0
  Add and fix mock
  Simplify and fix condition for Rotate features
  Refine commnets in GNA CONV tests file
  Apply review, Refactor ConvolutionPrimitive
  Refine CNN enforce legacy
  Add debug print
  Move debug dump definitions
  Add new metric for GNA library version
  Add coments on FP32
2021-01-15 16:56:37 +03:00
Nikita Kudriavtsev 5d63b5f41f
[IE][VPU]: Fixed the calculation of timeout for x32 system (#3842) 2021-01-15 12:17:28 +03:00
Ilya Lavrenov 036f574756
module library type for IE plugins, extensions (#3656)
* CMAKE: Added MODULE linker flags

* Fixed plugins.xml s

* Use module instead of shared library

* Fixes

* tab 2 spaces

* Renamed get_shared_library_name to ie_plugin_get_file_name
2020-12-23 18:25:42 +03:00
Maksim Kutakov 95f531e9e0
[CPU] Improved Split layer (#3449)
* [CPU] Added more optimal Split implementation
2020-12-16 16:51:01 +03:00
Vladislav Volkov ec48fcb29b
CPU plugin selective build (#3360) 2020-12-07 17:49:08 +03:00
Chenhu Wang d35e3e806b
[CPU]disable and cleanup interp and resample that are covered by interpolate (#3164)
* [BF16] Interpolate layer and test were updated for support BF16

Co-authored-by: alexey-varyzgin <alexey.varyzgin@intel.com>
2020-12-04 11:05:10 +03:00