박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Mar 2019 01:57:17 +0000 (10:57 +0900)]
[nnop] Use angkor (#3087)
Let's use angkor instead of deprecated nncc_core.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Mar 2019 01:57:09 +0000 (10:57 +0900)]
[nnsuite] Use angkor (intead of nncc_core) (#3085)
Let's use angkor instead of nncc_core!
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Mar 2019 01:57:02 +0000 (10:57 +0900)]
[nnkit] Use angkor instead of nncc_core (#3086)
Let's use nagkor instead of (deprecated) nncc_core.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Move ModelIR out of nnc into contrib (#3089)
* Move / rename directories:
`contrib/nnc/include/mir` -> `contrib/mir/include/mir`
`contrib/nnc/core/modelIR/proto` -> `contrib/mir/proto`
`contrib/nnc/core/modelIR` -> `contrib/mir/src`
`contrib/nnc/unittests/core` -> `contrib/mir/unittests`
* Fix required dependencies.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Repair dependencies of NNC importers (#3091)
* Change link dependencies of importers on `mir` from `PRIVATE` to `PUBLIC`.
* Use `target_include_directories` to make importers export their public include directories.
* Remove no longer used CMake variables.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Rename target nnc_core to mir (#3090)
Rename cmake target `nnc_core` to `mir`.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 14 Mar 2019 10:44:06 +0000 (19:44 +0900)]
Introduce angkor (as a placeholder) (#3080)
This commit introduces angkor subproject which will replace "nncc_core"
under libs.
This commit is the first step for replacement, and just intorduces a
placeholder (directory and target) required for migration.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Extract `ADT` component out of `nnc` (#3077)
* Move `adt` namespace from `nnc` namespace out to global.
* Move `ADT` component sources from `nnc` directory out to the `contrib` directory.
* Add required dependencies to fix build errors.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 14 Mar 2019 07:08:03 +0000 (16:08 +0900)]
[tfldump] Initialize pointer fields with nullptr (#3079)
"_tensors" and "_operators" in Reader class may be uninitialized.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Mar 2019 01:59:46 +0000 (10:59 +0900)]
[tfkit] Add readme (#3074)
* [tfkit] Add readme
This will add README file that explains about tfkit
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* apply comments
* change tfkit path
* change model filename
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 14 Mar 2019 00:30:21 +0000 (09:30 +0900)]
Extract ann-api subproject (#3072)
This commit extracts ann-api subproject out of ann in order to reduce
directory nesting level.
Note that this change does not affect other projects as "ann" remains as
a meta project.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 13 Mar 2019 16:16:00 +0000 (19:16 +0300)]
[nnc] Added missing 'override' specifier (#3076)
[nnc] Added missing 'override' specifier
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 12 Mar 2019 08:20:56 +0000 (17:20 +0900)]
[enco] Introduce PhaseConstructionPass (#3069)
This commit introduces PhaseConstructionPass and updates the backend to
use it.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 12 Mar 2019 07:44:38 +0000 (16:44 +0900)]
[enco] Introduce DeadBagElimination pass (#3068)
This commit introduces DeadBagEliminationPass and updates the backend
to use it.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 12 Mar 2019 05:38:23 +0000 (14:38 +0900)]
[enco] Introduce FreeOpElimination (#3067)
This commit introduces FreeOpElimination pass and updates the backend to
use it.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 12 Mar 2019 03:38:59 +0000 (12:38 +0900)]
[enco] Introduce FreeInstrEliminationPass (#3063)
This commit introduces FreeInstrEliminationPass and uses
it for compilation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Fix include guards after moving header files (#3066)
Change include guards to match the new location of the header files.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Reorganize the ModelIR include directory (#3065)
Move `contrib/nnc/include/core/modelIR` to `contrib/nnc/include/mir` in preparation for moving the MIR component to `contrib` directory.
Update `#include` directives.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Make namespace `mir` top-level (#3064)
Extract namespace `mir` out of namespace `nnc` in preparation to move the ModelIR to the `contrib` directory.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 10:35:11 +0000 (19:35 +0900)]
[enco] Introduce BypassGenerationPass (#3062)
Let's introduce and use BypassGenerationPass in enco backend
implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 10:07:33 +0000 (19:07 +0900)]
[enco] Introduce ConcatLoweringPass (#3061)
This commit introduces ConcatLoweringPass and updates the backend to use
it instead of lower_concat function.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 08:15:32 +0000 (17:15 +0900)]
[enco] Introduce CopyLoweringPass (#3060)
This commit introduces CopyLoweringPass and updates the backend
implementation to use this new pass.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 07:13:34 +0000 (16:13 +0900)]
[enco] Introduce DeadObjectEliminationPass (#3059)
This commit introduces DeadObjectEliminationPass and revises the backend
implementation to use this new pass.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 05:20:17 +0000 (14:20 +0900)]
[enco] Introduce ConstantFoldingPass (#3058)
This commit introduces ConstantFoldingPass and revises backend
implementation to use this ConstantFoldingPass pass.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Mar 2019 02:19:12 +0000 (11:19 +0900)]
[enco] Introduce DuplicatedObjectReductionPass (#3057)
This commit introduces DuplicatedObjectReductionPass and revises
backend implementation to use this new pass implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Sun, 10 Mar 2019 23:32:28 +0000 (08:32 +0900)]
[enco] Introduce IdenticalObjectReductionPass (#3056)
Let's re-implement Identical Object Reduction using Pass and
Pipeline infrastructure.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 8 Mar 2019 07:33:52 +0000 (16:33 +0900)]
[enco] Introduce IndirectCopyElimination (#3055)
This commit introduces and uses IndirectCopyElimination pass in
compilation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 8 Mar 2019 02:01:49 +0000 (11:01 +0900)]
[enco] Introduce DataLayoutConversionPass (#3053)
Let's introduce and use DataLayoutConversionPass instead of
convert_layout method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 7 Mar 2019 06:10:48 +0000 (15:10 +0900)]
[coco] Remove commented 'at' test for KernelObject (#3051)
This previously commented test is removed as it is fully moved to test
of KernelLayout. 'at' function is now responsible to KernelLayout.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Mar 2019 04:39:57 +0000 (13:39 +0900)]
[enco] Introduce IntrinsicSelectionPass (#3050)
This commit rewrites intrinsic selection using recently introduced
Pass infrastructure.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Mar 2019 03:36:55 +0000 (12:36 +0900)]
[enco] Introduce AvgPoolLoweringPass (#3049)
Let's access lower_avgpool through AvgPoolLoweringPass.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Mar 2019 02:28:35 +0000 (11:28 +0900)]
[enco] Introduce FeatureUnificationPass (#3048)
This commit introduces FeatureUnificationPass which wraps unify_feature
optimization function, and uses it instead of unify_feature.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 6 Mar 2019 10:51:28 +0000 (19:51 +0900)]
[enco] Introduce BagDuplicationPass (#3046)
This commit introduces BagDuplicationPass which wraps
"duplicate_inout_bag" optimization method, and updates Backend
implementation to use this pass instead of optimization method
itself.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 6 Mar 2019 07:42:34 +0000 (16:42 +0900)]
[enco] Introduce Pass & Pipeline classes (#3045)
This commit introduces Pass and Pipeline classes (along with their
unittest) which serves as basic infrastructure for configurable
compilation pipeline.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 4 Mar 2019 09:22:07 +0000 (18:22 +0900)]
[enco/gdb] Upgrade enco dump for instruction in gdb (#3035)
* [enco/gdb] Upgrade enco dump for instruction in gdb
Add enco_dump_instr function in gdb
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Add todo comments
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Feb 2019 08:44:28 +0000 (17:44 +0900)]
[flchef] Add FullyConnected for reverse (#3038)
This will add FullyConnected for tflchef-reverse
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Sun, 17 Feb 2019 22:18:10 +0000 (07:18 +0900)]
[tflchef] Add FullyConnected test recipe for 4D input (#3037)
* [tflchef] Add FullyConnected test recipe for 4D input
This will add another test.recipe for FullyConnected op that has the same shape as inception v3
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* reduce size
[nnc] Remove Elementwise helper class from interpreter backend (#3032)
Remove Elementwise helper class from the interpreter backend to improve code readability.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 14 Feb 2019 05:10:34 +0000 (14:10 +0900)]
Distinguish (none) and (unknown) type in producer info. (#3024)
This patch allows to distinguish (none) and (unknown) type in producer info.
The (none) means that there is no definition of producer.
The (unknown) means that it is generated unknown place.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
[nnc] Perform constant folding at import stage in TensorFlow Lite importer (#3031)
* Add constant folding to StridedSlice and Mul converters to support a common pattern Shape->StridedSlice->Mul->ResizeNearestNeighbor.
* Split converters of binary elementwise operations into separate functions.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Support for TensorFlow Lite SHAPE operator (#3025)
Initial support for TensorFlow Lite SHAPE operator in short term.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 12 Feb 2019 16:48:50 +0000 (19:48 +0300)]
[nnc] Introduce Compose Transposes optimization (#2972)
This PR Introduces `Combine Transposes` optimization which combines adjacent transposes and eliminates the noop ones.
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Feb 2019 23:55:18 +0000 (08:55 +0900)]
[caffegen] Resolve ODR violation (#3022)
To resolve ODR violation, this commit updates caffegen not to have
caffeproto as its direct dependency.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 11 Feb 2019 11:42:16 +0000 (20:42 +0900)]
[enco/gdb] Print out the producer info. of object (#3005)
* [enco/gdb] Print out the producer info. of object
This patch allows print out the producer information of object
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Introduce def_kind function
* Add shuffle case
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Feb 2019 08:09:36 +0000 (17:09 +0900)]
[enco.core] Use project-wide build options (#3020)
With this commit, project-wide build options are applied to enco_core
library.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 11 Feb 2019 08:09:23 +0000 (17:09 +0900)]
[enco] Invoke ANeuralNetworksEvent_free in cpp file (#3019)
Until now, c++ code that enco NNAPI backend generates didn't invoke `ANeuralNetworksEvent_free`
This commit will fix it
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Feb 2019 02:00:45 +0000 (11:00 +0900)]
[enco.core] Explicit dependent library visibility (#3018)
This commit makes the visibility of enco_core's dependent libraries
explicit.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Feb 2019 00:23:09 +0000 (09:23 +0900)]
[coco.generic] Apply project-wide build options (#3016)
With this commit, project-wide build(compile) options are applied to
coco_generic library.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Sun, 10 Feb 2019 23:43:43 +0000 (08:43 +0900)]
[enco.core] Resolve sign-compare warning (#3015)
This commit resolves a sign-compare warning in enco_core implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Sun, 10 Feb 2019 23:43:34 +0000 (08:43 +0900)]
[enco.core] Resolve unused variable/parameter warnings (#3014)
This commit resolves unused variable/parameter warnings in enco_core
library.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Redesign Model IR. Part 2. (#3017)
* Remove `IODescriptor` type alias.
* Add non-const variants of `getNode` method to `Operation::Output` and `Operation::Input` classes.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Redesign IR. Part 1. (#2998)
Introduce Input and Output classes that serve as inputs and outputs of a graph node.
Refactor other parts of the compiler to account for this change.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 8 Feb 2019 02:24:06 +0000 (11:24 +0900)]
[enco.core] Resolve return-type-c-linkage warning (#3012)
This commit resolves return-type-c-linkage warning that Clang reports
during build.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 8 Feb 2019 01:43:03 +0000 (10:43 +0900)]
[coco.generic] Declare visibility explicitly (#3009)
This commit updates coco_generic build script to declare visibilties of
each dependent libraries explicitly.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 8 Feb 2019 01:39:58 +0000 (10:39 +0900)]
[enco-cli] Apply project-wide compile options (#3011)
This commit applies project-wide compile options to enco-cli.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 8 Feb 2019 00:01:58 +0000 (09:01 +0900)]
[coco] Introduce KernelLayouts.test.cpp (#3006)
* [coco] Introduce KernelLayouts.test.cpp
This commit adds tests for NCHW, NHWC and Generic kernel layouts.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Reordering header files
* Refactor test name more specifically
* Introduce Generic_at test
* Call both const and non-const Generic::at()
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Feb 2019 07:57:12 +0000 (16:57 +0900)]
[tfkit] Support encode (#3007)
This commit extends tfkit with encode command which allows users to
convert a textual graph def into a binary form.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Feb 2019 06:28:18 +0000 (15:28 +0900)]
[tfkit] Initial commit (#3004)
This commit introduces tfkit which allows users to inspect tensorflow
graphdef files (.pb) with command-line interface.
The current implementation includes only "decode" command.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Feb 2019 04:42:03 +0000 (13:42 +0900)]
[coco.core] Apply strict compilation options (#3002)
* [coco.core] Apply strict compilation options
With this change, warnings in coco_core library (not its test) are
treated as an error when ENABLE_STRICT_BUILD is on.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update comment
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 6 Feb 2019 23:59:16 +0000 (08:59 +0900)]
[coco.core] Comment out unused arguments (#2990)
This commit comments out unused arguments from BC layout implementation
to suppress unused variable warning.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 6 Feb 2019 23:58:58 +0000 (08:58 +0900)]
[coco.core] Remove unused operator overloading (#2991)
This commit removes unused operator overloading in Shuffle.cpp.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 4 Feb 2019 16:25:34 +0000 (19:25 +0300)]
[nnc] Removed unused variables (#3000)
Removed unused variables from op creators
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Use getShape instead of directly accessing IODescriptor fields (#2999)
Use `getShape` method of `IODescriptor` instead of accessing its fields.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Scale op NEON implementation (#2995)
* Adapt BiasAdd operation NEON implementation for Scale
Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 1 Feb 2019 09:58:03 +0000 (12:58 +0300)]
[nnc] Fixed all integer overflow/underflow issues in cpu artifact snippets (#2981)
Added explicit static casts where converting between different external types( Shape, RuntimeShape, Dims<> )
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
[nnc] Eliminate redundant memory copy (#2984)
Do not copy memory in `Tensor::operator=` in case of constant argument
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 1 Feb 2019 03:57:35 +0000 (12:57 +0900)]
Download ONNX by default (#2974)
With this commit, DOWNLOAD_ONNX is set as ON by default.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 1 Feb 2019 01:43:21 +0000 (10:43 +0900)]
[coco.core] Explicitly specify link visibility (#2978)
This commit specifies link visibility over dependent libraries.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 1 Feb 2019 00:19:38 +0000 (09:19 +0900)]
[enco/gdb] Add load details (#2980)
This patch will allow the enco_dump_op and enco_dump_all_ops function
to output an information about object of Load operator.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
[nnc] Fix Graph.ReplaceInputs test (#2985)
Adjust test to new IR behavior: order of input nodes is not deterministic.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 31 Jan 2019 15:59:19 +0000 (18:59 +0300)]
[nnc] Initial optimization Pass (#2940)
Initial support for transpose composition
Added a `Matcher` class for matching graph patterns
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
[nnc] Fix svace error (#2982)
Fixed "Major" and "Critical" errors of svace
Signed-off-by: Dilshodzhon Poshshoev <d.poshshoev@samsung.com>
[nnc] Change interpreter compiler option (#2973)
Replace interpreter compiler option "--input-model-data" with "--input-data-dir". The latter specifies directory in which the data files for the model inputs can be found.
Refactor interpreter to account for this change.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 31 Jan 2019 04:50:59 +0000 (13:50 +0900)]
Reset internal variables before use (#2975)
This commit revises Protobuf_Generate to reset internal variables before
using them.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 31 Jan 2019 03:49:03 +0000 (12:49 +0900)]
[tflchef] Add Sqrt for reverse (#2969)
This commit adds Sqrt Op for reverse.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 Jan 2019 23:55:52 +0000 (08:55 +0900)]
Use Protocol Buffer 3.5.2 (#2963)
This commit integrates protocol buffer 3.5.2 (instead of 3.6.1) as a
nncc external package.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Codestyle fixes in cpu backend (#2939)
- rename variables and fix indents in cpu backend according to codestyle
- add comments about used algorithms
- questionable `static_cast` replaced with `dynamic_cast`
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Multi input data (#2959)
Multi-files in command line option --input-model-data.
Some nets require several files as input in execution.
Signed-off-by: Andrew V. Tischenko a.tischenko@partner.samsung.com
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 30 Jan 2019 11:18:47 +0000 (20:18 +0900)]
[coco] KernelObjectTest with comparing Shape (#2952)
This commit applies TODO comment. KernelObjectTest now compares Shape
with operator==.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
Павел Ильютченко/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 30 Jan 2019 11:03:25 +0000 (14:03 +0300)]
[nnc] Scale and BiasAdd realizations on Eigen (#2956)
Refactor Scale and BiasAdd ops on SoftBackend to use eigen functions
Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 Jan 2019 08:05:23 +0000 (17:05 +0900)]
[nnc] Link libprotobuf to nnc_support (#2962)
nnc_support implements some protocol buffer helpers, but protocol buffer
libraray is not linked.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 Jan 2019 08:00:02 +0000 (17:00 +0900)]
[caffegen] Do NOT require CaffeProto (#2964)
* [caffegen] Do NOT require CaffeProto
Caffe package includes CaffeProto, and thus it is unnecessary to request
CaffeProto.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix a typo (an -> and)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 Jan 2019 07:50:34 +0000 (16:50 +0900)]
Notify when FlatBuffers is available (#2966)
With this commit, cmake will display "Found FlatBuffers: TRUE"
message during configuration when FlatBuffers is available.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 29 Jan 2019 20:11:49 +0000 (23:11 +0300)]
[nnc] DotDumperPass (#2960)
Introduce dotDumper pass for dumping the Model graph after optimizations
in dot format
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 29 Jan 2019 15:07:48 +0000 (18:07 +0300)]
[nnc] Fixed weights tensor shape in ACL backend (#2958)
Fixed name of weights tensor shape variable in ACL backend to fix build
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Change the ModelIR Conv2D kernel format from HWIO to OHWI (#2941)
* Change the ModelIR Conv2D kernel format from HWIO to OHWI to match TensorFlow Lite format.
* Adjust importers and backends.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 29 Jan 2019 11:05:58 +0000 (14:05 +0300)]
[nnc] Fixed misleading indentation warning (#2954)
[nnc] Fixed misleading indentation warning
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 29 Jan 2019 09:56:11 +0000 (18:56 +0900)]
Rollback Protocol Buffer 3.6.1 integration (#2949)
Let's rollback to previous Protocol Buffer import routine.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 29 Jan 2019 09:07:49 +0000 (18:07 +0900)]
Add enco gdb operator names (#2947)
Add Sub, Sqrt, Div names
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 29 Jan 2019 04:20:22 +0000 (13:20 +0900)]
[coco] Reformat comments into doxygen style (#2942)
Doxygen cannot parse comments with '// @brief'. Now such comments are
reformatted to style that doxygen can parse as documentation.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 29 Jan 2019 04:00:09 +0000 (13:00 +0900)]
[enco] Reformat comments into doxygen style (#2943)
Doxygen cannot parse comments with '// @brief'. Now such comments are
reformatted to style that doxygen can parse as documentation.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 29 Jan 2019 03:46:21 +0000 (12:46 +0900)]
Integrate Protocol Buffer 3.6.1 (#2936)
* Integrate Protocol Buffer 3.6.1
This commit integrates Protocol Buffer 3.6.1 as a nncc external package.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update control flow
* Fix incorrect indentation
[nnc] Prepare the interpreter backend for the future changes related to adding of the Tensor class in the ModelIR (#2934)
* Add `getInputTensors` and `setOutputTensors` methods in place of the `var` method.
* Reformat the code according to coding style.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Add OutputOp class to represent graph outputs (#2930)
* Add OutputOp class to represent graph outputs.
* Add generation of instances of the class in importers.
* Modify backends to account for the new graph structure.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 28 Jan 2019 15:17:34 +0000 (18:17 +0300)]
[nnc] Increase interpreter speed (#2768)
Remove vector usage from Shapes and Indices
Move all getters into headers( inlining )
Increase inference speed up to 4x-6x times
Tinker with Deconv2D implementation to speed it up
Fix issue in broadcasting implementation
Signed-off-by: Vladimir Plazun v.plazun@partner.samsung.com
NNC comments code of conduct rules. (#2915)
The doc about PRs and source code comments rules was included.
Signed-off-by: Andrew V. Tischenko a.tischenko@partner.samsung.com
[nnc] Handle explicit memory operations in cpu backend (#2901)
- Generate explicit memory operations in inference sequence in ModelAnalyzer
- Generate code for memory operations from inference sequence in C++ generator
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Павел Ильютченко/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 28 Jan 2019 13:16:51 +0000 (16:16 +0300)]
[nnc] Eigen realisation of some activation functions of SoftBackend (#2926)
New realisations for activation functions:
- CappedRelu
- LeakyRelu
- Sigmoid
Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
[nnc] Prepare the ACL backend for the future changes related to adding of the Tensor class in the ModelIR (#2933)
* Change the signature of `tensorName` and `genTensor` methods to accept `IODescriptor` instead of `Operation`.
* Use the `collectInputs` and `collectOutputs` methods of Graph class instead of collecting input and output operations manually in the ACL backend.
* Add `getInput` method to `Operation` class.
* Add uses of `getInput` method in the ACL backend.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 28 Jan 2019 00:42:17 +0000 (09:42 +0900)]
[coco] Edit comment box into consistant way (#2923)
This commit edits '/***' into '/**' in coco as majority of comment boxs
start with '/**'. Moreover doxygen could only parse comment boxs start
with '/**' as documentation.
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>