윤지영/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>
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>