박종현/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>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 25 Jan 2019 14:15:40 +0000 (17:15 +0300)]
[nnc] Implemented PadOp in ACL backend (#2925)
Implemented ACL backend pad operation.
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Delete interpreter system tests (#2927)
Delete deprecated interpreter system tests.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 25 Jan 2019 10:11:26 +0000 (13:11 +0300)]
[nnc] Don't serialize excess constant tensors in ACL backend (#2906)
Reduce memory consumption by elimination of excess constant tensor serialization in ACL backend
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Rename VariableOp class to InputOp (#2924)
Rename VariableOp class to InputOp. This class represents graph inputs; InputOp is more precise name for this class.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 25 Jan 2019 08:35:36 +0000 (17:35 +0900)]
[enco] Add test file for constant folding (#2898)
* [enco] Add test file for constant folding
Until now, there is no test file to validate constant folding
This commit will add such test cases
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
* Use same prefix
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 25 Jan 2019 01:32:17 +0000 (10:32 +0900)]
[coco] Fix typo in comment (#2911)
This commit corrects 'breif' into 'brief' in coco
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 25 Jan 2019 01:32:05 +0000 (10:32 +0900)]
[enco] Fix typo in comment (#2912)
This commit corrects 'breif' into 'brief' in enco
Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
[nnc] CPU backend sequence memory and transpose operations (#2884)
- Move inference sequence entities to separate file
- Refactor inference sequence uses to support several types of operations
- Code style fixes in cpu soft backend
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 23 Jan 2019 20:57:29 +0000 (23:57 +0300)]
[nnc] Allocate ACL elementwise op output and temporary tensors (#2914)
Allocate ACL elementwise op output and temporary tensors
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Remove shared_ptr from TensorVariant's constructor (#2907)
* Change the signatures of TensorVariant consturctors to accept a plain pointer to data instead of shared_ptr.
* Refactor uses of the constructors.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 23 Jan 2019 01:55:09 +0000 (10:55 +0900)]
[enco] Not apply constant folding when instruction has output bag (#2897)
* [enco] Not apply constant folding when instruction has output bag
Until now, constant folding was even applied to the instructions which have output bag.
If then, constant folding tries to update network output buffer but it is not impossible.
Furthermore, the total result would be abnormal.
This commit will fix it by not applying constant folding when instruction has output bag and add related testcases.
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
* add TODO comment
* rename testcase
[nnc] Support for non-1 batch in Conv2D and DepthwiseConv2D operations (#2902)
* Add support for non-1 batch size in Conv2D and DepthwiseConv2D in interpreter backend.
* Fix a bug in ShapeRange class that caused undefined behavior when it is constructed from a temporary.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Remove limitation on input shape in importers (#2903)
Remove limitations on input shape in Caffe2, TensorFlow Lite and ONNX importers.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 22 Jan 2019 07:55:11 +0000 (10:55 +0300)]
[nnc] Fix arm-cpu build (#2905)
Fix arm-cpu build by removing activations left out under #ifdef
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 22 Jan 2019 02:35:15 +0000 (11:35 +0900)]
[enco/caffe] Average Pooling with Non Square Kernel (#2892)
This commit fixes a bug in Caffe frontend which results in incorrect
results when there is an average pooling layer with non squre kernel.
This commit also adds a related regression test.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 21 Jan 2019 15:47:55 +0000 (18:47 +0300)]
[nnc] Fixed several ACL bugs (#2900)
* Increased padding if caffe formula for pooling output producing wrong result
* Removed `RoundMode` from `PoolOp`
* Added missing argument for generated `CLArithmeticAddition` call
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 21 Jan 2019 15:37:23 +0000 (18:37 +0300)]
[nnc] Conv refactor (#2886)
Cleaned up `Conv2d` and `ConvTranspose`;
Updated Conv2d with upstream implementation
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
[nnc] Refactor TensorFlow Lite importer (#2890)
Refactor TensorFlow Lite importer to identically process constant and variable inputs to operators.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 21 Jan 2019 10:30:49 +0000 (13:30 +0300)]
[nnc] Fixed nnc test coverage collecting (#2889)
[nnc] Fixed nnc test coverage collecting
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 18 Jan 2019 06:50:13 +0000 (15:50 +0900)]
[enco] Remove unused variable load (#2882)
To suppress unused variable warning, remove declaration of `load`.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 18 Jan 2019 05:55:42 +0000 (14:55 +0900)]
[enco] Add residual_bn test (#2822)
This commit adds the residual_bn test
by copying the original residual block from resnet18.prototxt.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 18 Jan 2019 01:29:53 +0000 (10:29 +0900)]
Support decentralized build dependency declaration (#2865)
This commit allows each sub-project to declare its build dependencies.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤지영/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 17 Jan 2019 09:41:20 +0000 (18:41 +0900)]
[enco] Add BatchNorm in caffe frontend (#2879)
* [enco] Add BatchNorm in caffe frontend
This commit has BatchNorm layer in caffe frontend
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Add BatchNorm testcase in caffe test
* Removed unused file and Update year
[nnc] Make convolution operations treat the second tensor as ordinary argument (#2869)
* Change the signatures of Conv2DOp, DepthwiseConv2DOp and DeConv2DOp to identically handle both input parameters.
* Refactor uses of Conv2DOp, DepthwiseConv2DOp and DeConv2DOp.
* Rename corresponding files in interpreter backend according to coding style.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 17 Jan 2019 04:18:08 +0000 (13:18 +0900)]
[enco] remove unnecessary indentation (#2875)
This will remove unnecessary indentation and remove todo comment
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 17 Jan 2019 02:14:11 +0000 (11:14 +0900)]
Introduce BUILD_FLATBUFFERS option (#2874)
This commit introduces BUILD_FLATBUFFERS option which allows users not
to build Flatbuffers (and use pre-installed one instead).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 16 Jan 2019 17:44:12 +0000 (20:44 +0300)]
[nnc] Fix build (#2871)
- Fixed build failure due to signature change.
- Refactored ONNX importer from PR #2705
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 16 Jan 2019 16:45:39 +0000 (19:45 +0300)]
[nnc] Add temporary im2col buffer reuse (#2859)
Add temporary buffer reuse to soft backend for Conv
Implemented via a temporary tensor
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 16 Jan 2019 16:12:19 +0000 (19:12 +0300)]
[nnc] New importers/style transfer ops support (#2705)
Added resize to caffe2 and ONNX (as upsample)
Tested with 1 layer nets.
Signed-off-by: Andrei Shedko a.shedko@partner.samsung.com
[nnc] The initial implementation of Shape op in ONNX (#2868)
inception_v3 model requires this operation.
In addition I changed the includes order inside some ONNX files.
Signed-off-by: Andrew V. Tischenko a.tischenko@partner.samsung.com
Павел Ильютченко/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 16 Jan 2019 14:22:21 +0000 (17:22 +0300)]
[nnc] Remove BiasAdd and ScaleOp from Add operation in Caffe2 frontend (#2857)
* Remove BiasAdd and ScaleOp from caffe2 convertAdd
* Fix BatchNorm assertion of caffe frontend
* Fix Elementwise with broadcast on caffe frontend
Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
[nnc] Mobilenet support in soft backend in ONNX (#2866)
Soft backend can't load int64 constant tensors that's why it was transformed in float one (reshape operation).
Signed-off-by: Andrew V. Tischenko <a.tischenko@partner.samsung.com>
[nnc] Make FullyConnectedOp treat the second tensor as ordinary argument (#2858)
* Change the signature of FullyConnectedOp to identically handle both input parameters.
* Refactor uses of FullyConnectedOp.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Some ops fixes, mobilenet support on ONNX. (#2856)
There were fixed/implemented the following operators:
PadOp, GivenTensorFillOp, ConstantOp, ConvOp.
As result we have now 2 working NNs: resnet50 and mobilenet. The last one was tested on interpreter only.
Signed-off-by: Andrew V. Tischenko <a.tischenko@partner.samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 16 Jan 2019 06:53:55 +0000 (15:53 +0900)]
[enco] Fix comment for duplicate_inout_bag (#2864)
This will fix a typo and explanation of the function
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 15 Jan 2019 23:55:08 +0000 (08:55 +0900)]
[enco/tflite] Add Regression 0003 testcase (#2854)
This commit introduces Regression 0003 testcase whose inputs are all
constant.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Adapt ONNX importer to modified ScaleOp interface (#2860)
Take into account modified interface of ScaleOp in ONNX importer.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Make BiasAddOp and ScaleOp treat the second tensor as ordinary argument (#2848)
* Change the signatures of BiasAddOp and ScaleOp to identically handle both input parameters.
* Refactor uses of BiasAddOp and ScaleOp.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Refactor TFLite importer to support operators with multiple outputs (#2816)
Make operator conversion methods accept and return vectors of `IODescriptor`s.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 15 Jan 2019 10:23:04 +0000 (19:23 +0900)]
[tflchef] Support Sqrt operation (#2695)
This commit supports generating tflite file of Sqrt operation.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 15 Jan 2019 06:15:05 +0000 (15:15 +0900)]
[tflchef] tlchef for FullyConnected (#2852)
* [tflchef] tlchef for FullyConnected
This commit adds code to convert recipe for FullyConnected to tflite file.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* alphabetical order
* remove comment about alphabetical order
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 15 Jan 2019 03:56:25 +0000 (12:56 +0900)]
[enco] Refactor DuplicatePass (#2850)
This will hide DuplicatePass class and provide duplicate_inout_bag() like the other transformation pass
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 15 Jan 2019 03:54:29 +0000 (12:54 +0900)]
[enco] Refactor SplitPass (#2849)
This will hide SplitPass class and provide split_into_phases() like the other transformation pass
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 15 Jan 2019 02:07:39 +0000 (11:07 +0900)]
[enco] Comment for bypass_shuffle (#2843)
* [enco] Comment for bypass_shuffle
This will add comment for generate_bypass_shuffle method
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* apply comments
* apply comments
* apply comment
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 15 Jan 2019 01:57:30 +0000 (10:57 +0900)]
[coco] Add comment of Bag Input Output (#2846)
* [coco] Add comment of Bag Input Output
This will add explanation comment for input and output attributes
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* apply comment
[nnc] Refactoring cmake build system (#2844)
* make separate config and utils files
* refactoring CMakeLists in other components
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
[nnc] Refactor ONNX importer to support operators with multiple outputs (#2831)
Make operator conversion methods accept and return vectors of IODescriptors.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Fix soft backend implementation for Gemm (#2750)
- Fixed generation of cpu soft backend gemm operation
- Small refactoring and typo fixes of interpreter and onnx frontend
Signed-off-by: Andrew V. Tischenko <a.tischenko@partner.samsung.com>