platform/core/ml/nnfw.git
4 years ago[docs] Added Unit Test Report (#9080)
Alexander Efimov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 20:13:13 +0000 (23:13 +0300)]
[docs] Added Unit Test Report (#9080)

Added UTR for DR2

Signed-off-by: Alexander Efimov <a.efimov@samsung.com>
4 years ago[nnc] Supported HardSwish operation on Interpreter (#9118)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 17:24:01 +0000 (20:24 +0300)]
[nnc] Supported HardSwish operation on Interpreter (#9118)

* Implemented realization of HardSwishOp on iterpreter

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[mir-tflite-importer] Supported HardSwish operation on tflite frontend (#9119)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 17:16:07 +0000 (20:16 +0300)]
[mir-tflite-importer] Supported HardSwish operation on tflite frontend (#9119)

* Implemented HardSwishOp converter on tflite frontend

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[nnc] Fix compiler warnings (#9117)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 16:30:50 +0000 (19:30 +0300)]
[nnc] Fix compiler warnings (#9117)

Fix compiler warnings breaking release build.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[mir] Fix compiler warnings (#9115)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 16:30:13 +0000 (19:30 +0300)]
[mir] Fix compiler warnings (#9115)

Fix a couple compiler warnings breaking release build.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[adtidas] Fix compiler warnings (#9116)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 16:29:58 +0000 (19:29 +0300)]
[adtidas] Fix compiler warnings (#9116)

Fix compiler warnings breaking release build.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[compiler] Introducing oops (user exception, internal exception) (#9063)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 21 Nov 2019 11:04:01 +0000 (20:04 +0900)]
[compiler] Introducing oops (user exception, internal exception) (#9063)

* [compiler] Introducing oops

_oops_ is a project for user exception and internal exception.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* Stone -> InfinityStones

* internalExn takes FILE, LINE, then msg

* separator typo

* preparing 4 variables

4 years ago[neurun] Introduce SUBG_MAX_NODE feature (#9085)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 10:31:28 +0000 (19:31 +0900)]
[neurun] Introduce SUBG_MAX_NODE feature (#9085)

* [neurun] Introduce SUBG_MAX_NODE feature

Introduce SUBG_MAX_NODE feature on lower phase
- SUBG_MAX_NODE=n : a subg has a maximum of n node
- SUBG_MAX_NODE=0(default) : a subg has a node or nodes without limit

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* cast by static_cast

4 years ago[exo] Clarify commutative_args_of(...).is(...) intension (#9092)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 10:09:34 +0000 (19:09 +0900)]
[exo] Clarify commutative_args_of(...).is(...) intension (#9092)

* [exo] Clarify commutative_args_of(...).is(...) intension

There has been confusion on meaning and usage of helper
`commutative_args_of(...).is(...)`. This commit tries to clarify them.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Fix typo

4 years agoIntroduce ITensorRegister registering tensor info (#9089)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 09:11:18 +0000 (18:11 +0900)]
Introduce ITensorRegister registering tensor info (#9089)

This commit instroduces ITensorRegister registering tensor info.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[dredd-rule-lib] Enhancing rule-lib.sh (#9102)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 21 Nov 2019 08:58:32 +0000 (17:58 +0900)]
[dredd-rule-lib] Enhancing rule-lib.sh (#9102)

This enhances rule-lib.sh: 1) error check with function (for clean code) 2) replacing `grep .. | wc -l` with `grep -c` (-c is for counting), 3) processing grep error when exit code is not 0

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[neurun] Refactor too big Graph::lower() (#9087)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 08:37:39 +0000 (17:37 +0900)]
[neurun] Refactor too big Graph::lower() (#9087)

Separate Graph::lower() into multiple methods such as makeSubgraphs and
manipulateLowerInfo

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
4 years ago[exo] Refactor to is_1D_with_dummy_dim() (#9096)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 08:18:03 +0000 (17:18 +0900)]
[exo] Refactor to is_1D_with_dummy_dim() (#9096)

This commit refactors:
`is_1D_with_dummy_rank()` to `is_1D_with_dummy_dim()`

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] CommutativeArgsGetter::is() implementation (#9093)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 08:08:09 +0000 (17:08 +0900)]
[exo] CommutativeArgsGetter::is() implementation (#9093)

This commit introduces implementation of CommutativeArgsGetter::is()

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] is_instance_mean() implementation (#9095)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 08:07:49 +0000 (17:07 +0900)]
[exo] is_instance_mean() implementation (#9095)

This commit implements `is_instance_mean()` helper

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[res/TensorFlowTests] UI_000: wrong network (kernel is missing in Conv2D) (#9091)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 21 Nov 2019 08:00:05 +0000 (17:00 +0900)]
[res/TensorFlowTests] UI_000: wrong network (kernel is missing in Conv2D) (#9091)

This is a wrong network (kernel is missing in Conv2D) to see error message of the compiler.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[exo] is_1D_with_dummy_rank() implementation (#9094)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 07:27:21 +0000 (16:27 +0900)]
[exo] is_1D_with_dummy_rank() implementation (#9094)

This commit implements `is_1D_with_dummy_rank()` helper

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years agoIntroduce tf2circle-ui-check (#9083)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 21 Nov 2019 07:05:22 +0000 (16:05 +0900)]
Introduce tf2circle-ui-check (#9083)

tf2circle-ui-check makes it easy to check the console output of
tf2circle for each testcases.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
4 years agoFix wrong calculating strides of srcn backend (#9073)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 06:58:58 +0000 (15:58 +0900)]
Fix wrong calculating strides of srcn backend (#9073)

This commit fixeswrong calculating strides of srcn backend.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[neurun] Simplify code using Operand::asVector (#9038)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 06:58:07 +0000 (09:58 +0300)]
[neurun] Simplify code using Operand::asVector (#9038)

Simplify code using newly introduced `Operand::asVector`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[exo] Instance Norm pattern match logic (#9054)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 06:09:37 +0000 (15:09 +0900)]
[exo] Instance Norm pattern match logic (#9054)

This commit implements Instance Norm pattern match logic. Used helper
function's detail not implemented yet.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] Refactor knob and log prefix (#9059)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 05:11:12 +0000 (14:11 +0900)]
[exo] Refactor knob and log prefix (#9059)

This commit refactors prefix 'EXOTFLITE_' to 'EXO_' as knob and log
structrue is not only for exo-tflite, but about all exo.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years agoSeparate benchmark scripts for neurun and pacl (#8945)
Dilshodzhon Poshshoev/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 21 Nov 2019 04:09:34 +0000 (07:09 +0300)]
Separate benchmark scripts for neurun and pacl (#8945)

1. Rename run_benchmark_op.sh to run_benchmark_pacl.sh
2. Change run_benchmark.sh to use neurun
3. run_benchmark.sh can handle --benchmark_op option using neurun (porting from run_benchmark_pacl.sh)
4. Remove LD_LIBRARY_PATH from usage msg
5. Append _neurun to script name

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
4 years ago[exo] Fix for unused variables in Release build (#9081)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 21 Nov 2019 03:04:48 +0000 (12:04 +0900)]
[exo] Fix for unused variables in Release build (#9081)

* [exo] Fix for unused variables in Release build

This will fix unused variables warning/error in Release build

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* fix build error

4 years ago[neurun] Apply nnfw_benchmark_lib to nnpackage_run and tflite_run (#9046)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 02:01:13 +0000 (11:01 +0900)]
[neurun] Apply nnfw_benchmark_lib to nnpackage_run and tflite_run (#9046)

Apply nnfw_benchmark_lib to nnpackage_run and tflite_run

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
4 years ago[cwrap] Fix unused function for Rel build (#9071)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 21 Nov 2019 00:51:52 +0000 (09:51 +0900)]
[cwrap] Fix unused function for Rel build (#9071)

This will fix unused function warning/error for Release build

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[neurun] Remove use of type_index (#9072)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 21 Nov 2019 00:51:15 +0000 (09:51 +0900)]
[neurun] Remove use of type_index (#9072)

Now that we have OpCode, we do not need type_index.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[moco-import] Fix for unused variables in Release build (#9069)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 22:10:40 +0000 (07:10 +0900)]
[moco-import] Fix for unused variables in Release build (#9069)

This will fix unused variabled warning/error in Release build

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[neurun] Refine BackendManager ctor (#9058)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 12:00:12 +0000 (21:00 +0900)]
[neurun] Refine BackendManager ctor (#9058)

- Use `split` helper function rather than directly parsing
- Use container's `empty()` method rather than checking size is 0

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years agoAdd a method isRegistered into TensorBuilder (#9043)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 11:25:11 +0000 (20:25 +0900)]
Add a method isRegistered into TensorBuilder (#9043)

This commit addes a method isRegistered into TensorBuilder.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[tf2circle-dredd-pb-test] renaming test.* to model.* (#9068)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 10:35:45 +0000 (19:35 +0900)]
[tf2circle-dredd-pb-test] renaming test.* to model.* (#9068)

Previously test.pb and test.info were input to this test. They were renamed to model.*.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[tf2tflite-dredd-pb-test] renaming test.* to model.* (#9067)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 10:25:18 +0000 (19:25 +0900)]
[tf2tflite-dredd-pb-test] renaming test.* to model.* (#9067)

Previously test.pb and test.info were input to this test. They were renamed to model.*.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[exo] Fix visitor fallback: throw, not assert (#8979)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 09:36:18 +0000 (18:36 +0900)]
[exo] Fix visitor fallback: throw, not assert (#8979)

This commit fixes visitor fallback behavior from assert to throw runtime
error. This is regarding release build.

Fixed visitors:
- TFLNodeVisitor
- TFLMutableNodeVisitor
- CircleNodeVisitor
- CircleMutableNodeVisitor

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years agoAdd a tool for extracting subgraph from a pb file (#8911)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 08:06:10 +0000 (17:06 +0900)]
Add a tool for extracting subgraph from a pb file (#8911)

This commit adds a tool for extracting subgraph from a pb file.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[nnfw/gbs] Enable test on tizen (#9053)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 20 Nov 2019 07:55:11 +0000 (16:55 +0900)]
[nnfw/gbs] Enable test on tizen (#9053)

- Include gtest source files to remove error by gtest & gmock version mismatch and use on gbs build
- Update skiplist: skip transpose conv until error resolved

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[neurun/cpu] Enable squeeze operation (#9057)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 20 Nov 2019 07:28:18 +0000 (16:28 +0900)]
[neurun/cpu] Enable squeeze operation (#9057)

Enable squeeze operation on neurun cpu backend
Squeeze operation use reshape kernel

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[xtrace] Move Event tools to libs/misc (#9056)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 06:54:44 +0000 (15:54 +0900)]
[xtrace] Move Event tools to libs/misc (#9056)

Move EventRecorder and EventCollector to `libs/misc` from
`contrib/xtrace` so that those can be used from neurun.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[neurun] Eliminate OperandIndex in Transpose::Param (#9016)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Wed, 20 Nov 2019 06:23:59 +0000 (09:23 +0300)]
[neurun] Eliminate OperandIndex in Transpose::Param (#9016)

Replace `OperandIndex` in `ArgMax::Param` with `vector<int>`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[exo] Register Circle service to exo pass (#8996)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 05:48:34 +0000 (14:48 +0900)]
[exo] Register Circle service to exo pass (#8996)

* [exo] Register Circle service to exo pass

This commit registers circle shape and type inference service to exo
shape and type inference passes, respectively.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Add todo

4 years ago[neurun/acl_neon] Simplify code using Operand::asVector (#9039)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Wed, 20 Nov 2019 05:37:54 +0000 (08:37 +0300)]
[neurun/acl_neon] Simplify code using Operand::asVector (#9039)

Simplify code using newly introduced `Operand::asVector`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[locomotiv] Fix release build unused var (#9045)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 05:22:06 +0000 (14:22 +0900)]
[locomotiv] Fix release build unused var (#9045)

This will fix release build for unused variable warning/error

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[moco-svc] Fix release build unused var (#9047)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 05:19:51 +0000 (14:19 +0900)]
[moco-svc] Fix release build unused var (#9047)

* [moco-svc] Fix release build unused var

This will fix release build for unused variable warning/error
and throw runtime error to usef for invalid model file

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* fix message

4 years ago[logo] Added redundant Matrix conversion (#9018)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Wed, 20 Nov 2019 05:11:56 +0000 (08:11 +0300)]
[logo] Added redundant Matrix conversion (#9018)

* Added elimination -- MatrixDecode -- MatrixEncode --
* Added elimination -- MatrixEncode -- MatrixDecode --

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[loco] inline method only used in assert (#9044)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 20 Nov 2019 04:57:43 +0000 (13:57 +0900)]
[loco] inline method only used in assert (#9044)

This will inline method only used in assert to prevent Release build warning/error

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[neurun] Call dlclose for all backends (#9035)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 04:18:07 +0000 (13:18 +0900)]
[neurun] Call dlclose for all backends (#9035)

Call dlclose for all backends before termination. The handle pointer is
wrapped as unique_ptr and the handle map's order is changed since the
deletion order matters(backend objects must be deleted first).

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Fuse Instance Norm (intro) (#9012)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 03:34:47 +0000 (12:34 +0900)]
[exo] Fuse Instance Norm (intro) (#9012)

* [exo] Fuse Instance Norm (intro)

This commit introduces basic code structure for FuseInstanceNormPass. It
also shows subgraph pattern to fuse.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Review feedback: refactoring, new helper, comment

4 years ago[exo] NET_0028(Instance Norm) dredd rule (#9010)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 03:34:35 +0000 (12:34 +0900)]
[exo] NET_0028(Instance Norm) dredd rule (#9010)

This commit introduces dredd rule for 1.0 release requirement: tf2circle
should merge Instance Norm pattern

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[xtrace] Extract out EventCollectingListener (#9031)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 01:27:05 +0000 (10:27 +0900)]
[xtrace] Extract out EventCollectingListener (#9031)

Extract EventCollectingListener into a separate file.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[neurun] Introduce benchmark_lib as benchmark util (#8995)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 20 Nov 2019 00:54:44 +0000 (09:54 +0900)]
[neurun] Introduce benchmark_lib as benchmark util (#8995)

* [neurun] Introduce benchmark_lib as benchmark util

- Accumulator: accumulates performance value
- CsvWriter: writes data aligning header to csv file
- MemoryPoller: gets memory by polling specific file status

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* Remove Accumulator.h

4 years ago[neurun] Introduce `Operand::asVector` (#9030)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Tue, 19 Nov 2019 14:02:54 +0000 (17:02 +0300)]
[neurun] Introduce `Operand::asVector` (#9030)

Add `Operand::asVector` method (analogous to `asScalar`) for extracting vectors from constant operands. It is useful in loader (circle/tflite) and NNAPI importer.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[nnpkg-run] remove tensor_dumper not used any longer (#9025)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 19 Nov 2019 09:20:32 +0000 (18:20 +0900)]
[nnpkg-run] remove tensor_dumper not used any longer (#9025)

It removes tensor_dumper.{h,cc}, which are not used any longer.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[xtrace] Decouple EventCollector from xray (#9024)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 07:55:24 +0000 (16:55 +0900)]
[xtrace] Decouple EventCollector from xray (#9024)

- Introduce new EventCollector class that is not dependent on xray
  framework
- Rename as-is `EventCollector` to `EventCollectingListener`

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[neurun] Fix for const model ouput (again) (#9002)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 07:55:08 +0000 (16:55 +0900)]
[neurun] Fix for const model ouput (again) (#9002)

* [neurun] Fix for const model ouput (again)

Handle properly when a model has const model outputs.
This makes it not crash however the results are still incorrect since
Const values are not initialized yet.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Fix failure

It is wrong that assuming just one use for inputs.

* Merge fix

4 years ago[neurun] Eliminate OperandIndex in ArgMax::Param (#9015)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Tue, 19 Nov 2019 07:20:05 +0000 (10:20 +0300)]
[neurun] Eliminate OperandIndex in ArgMax::Param (#9015)

Replace `OperandIndex` in `ArgMax::Param` with `int`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[neurun] Introduce toString for OpCode (#9005)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 07:13:04 +0000 (16:13 +0900)]
[neurun] Introduce toString for OpCode (#9005)

Introduce toString for OpCode so Operation derivatives do not need to
override `name()` method. At first, I wanted to get rid of `name()`
method but left it due to Custom op.

NOTE : We could get rid of `name()` method if we handle custom
operations specially.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Remove commented code (#8992)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 06:55:03 +0000 (15:55 +0900)]
[exo] Remove commented code (#8992)

This commit removes commented 'set_new_shape' code

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[dredd] more error handling (#8978)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 19 Nov 2019 04:56:02 +0000 (13:56 +0900)]
[dredd] more error handling (#8978)

* [dredd] more error handling

This adds two error handling: 1) error log into $ERROR_LOG file 2) catching error in pipe

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* fixing wrong rule

* another fix for rule file.

4 years agoUpdate README (#9019)
여지환/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 19 Nov 2019 02:21:50 +0000 (11:21 +0900)]
Update README (#9019)

Update link for HowToContribute document
- HowToContribute document relocated from docs/nnfw to docs

Signed-off-by: JiHwan Yeo <jihwan.yeo@samsung.com>
4 years ago[exo] Instance Norm summary (#9009)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 01:51:06 +0000 (10:51 +0900)]
[exo] Instance Norm summary (#9009)

This commit implements summary for Circle Instance Norm IR.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[xtrace] nit : Fix inclusion (#9013)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 19 Nov 2019 00:32:54 +0000 (09:32 +0900)]
[xtrace] nit : Fix inclusion (#9013)

Including `str.h` includes `sstream` indirectly, but it should directly
`sstream` rather than `str.h`.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[neurun] Do not use Graph::release* methods in Linear (#8957)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Mon, 18 Nov 2019 09:53:55 +0000 (12:53 +0300)]
[neurun] Do not use Graph::release* methods in Linear (#8957)

Moving subgraphs, lowerinfo, etc. from Graph to Linear and then to Executors makes it difficult to understand who is the owner of these entities. It is enough to pass `Graph` to `Linear` by reference.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[moco-svc] Shape and Type inference for FakeQuant (#9004)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 18 Nov 2019 09:37:00 +0000 (18:37 +0900)]
[moco-svc] Shape and Type inference for FakeQuant (#9004)

This will add Shape and Type inference for FakeQuantWithMinMaxVars node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[logo] Use logo-core (#9007)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 18 Nov 2019 09:08:43 +0000 (18:08 +0900)]
[logo] Use logo-core (#9007)

This will update to use logo-core and remove files that have migrated

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[moco-pass] Use logo-core instead of logo (#9006)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 18 Nov 2019 09:08:15 +0000 (18:08 +0900)]
[moco-pass] Use logo-core instead of logo (#9006)

This will update moco-pass to use logo-core as it only uses Pass and Phase class

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years agoFix flatbuffers build with gcc versions >= 8.0 (#8954)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/Samsung Electronics [Mon, 18 Nov 2019 08:59:06 +0000 (11:59 +0300)]
Fix flatbuffers build with gcc versions >= 8.0 (#8954)

gcc 8.0+ adds `class-memaccess` diagnostic, making flatbuffers build fail when Werror is enabled
This disables class-memaccess diagnostic for gcc versions greater than 8.0

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
4 years ago[logo-core] logo-core from logo (#8991)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 18 Nov 2019 07:56:08 +0000 (16:56 +0900)]
[logo-core] logo-core from logo (#8991)

* [logo-core] logo-core from loco

This will introduce logo-core copied from logo with Pass and Phase class

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* fix typo

4 years ago[doc] Update howto xu4 tizen (#8981)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Nov 2019 07:49:48 +0000 (16:49 +0900)]
[doc] Update howto xu4 tizen (#8981)

- Slow down fan speed using cpu governor
- Mount writable root file stsyem
- Install OpenCL

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[neurun] Move OpCode hash to OpCode file (#9001)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 07:37:13 +0000 (16:37 +0900)]
[neurun] Move OpCode hash to OpCode file (#9001)

Since OpCode hash can be used in different modules, move it and put it
as `std::hash` specialization so we do not need to pass it to containers
manually.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[nnpkg-run] templatize randomData and introduce unnamed namespace (#9000)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 18 Nov 2019 07:06:48 +0000 (16:06 +0900)]
[nnpkg-run] templatize randomData and introduce unnamed namespace (#9000)

It is a preparation step to support qint8 input/output.
It templatize randomData and introduce unnamed namespace.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[exo] Type & Shape inference of Instance Norm (#8993)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 06:58:42 +0000 (15:58 +0900)]
[exo] Type & Shape inference of Instance Norm (#8993)

This commit introduces type and shape inference for Instance Norm IR.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[logo] Fix typo on README (#8997)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 06:53:21 +0000 (15:53 +0900)]
[logo] Fix typo on README (#8997)

This commit fixes typo on README

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] Add Circle node summary builder for logging (#8994)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 06:52:55 +0000 (15:52 +0900)]
[exo] Add Circle node summary builder for logging (#8994)

This commit adds Circle node summary builder to log Circle nodes

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[neurun] Extract out Observee from Executor (#8970)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 06:47:42 +0000 (15:47 +0900)]
[neurun] Extract out Observee from Executor (#8970)

* [neurun] Extract out Observee from Executor

- Remove observee(subject) methods from Executor
- Introduce `ExecutionObservee` class

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Remove DataflowExecutor::addObserver

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[neurun/interp] Use model opcode enum (#8999)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Nov 2019 06:09:19 +0000 (15:09 +0900)]
[neurun/interp] Use model opcode enum (#8999)

Remove interpreter internal opcode enum and use model opcode enum neurun::model::OpCode

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[nnpackage-run] Backend resolve for operation type (#8919)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 18 Nov 2019 05:57:36 +0000 (14:57 +0900)]
[nnpackage-run] Backend resolve for operation type (#8919)

Can resolve backend for each operation type using environment variable
- Support conv, depthwise conv, transpose conv, mean, average pool, max pool, instance norm, add
- Update api operation map for instance norm and add operation backend set

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years agoRevert "[neurun] Fix for const model ouput (#8799)" (#8998)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 05:36:31 +0000 (14:36 +0900)]
Revert "[neurun] Fix for const model ouput (#8799)" (#8998)

This reverts commit 0bc930bd7d816b48c148c6043a6a8abb08badf51.

Fix push builder failure.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Remove specialized visitor fallback (#8980)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 04:44:33 +0000 (13:44 +0900)]
[exo] Remove specialized visitor fallback (#8980)

This commit removes specialized visitor fallback for type and shape
inference for TFL and Circle dialects. These visitors now use default
fallback defined by their bases.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[neurun] Introduce OpCode enum type (#8977)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 04:21:38 +0000 (13:21 +0900)]
[neurun] Introduce OpCode enum type (#8977)

Introduce OpCode enum type for operations. Each operation has its unique
OpCode value.

Resolve #8858

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Extract out set_new_shape() for TFLReshape (#8950)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 04:20:15 +0000 (13:20 +0900)]
[exo] Extract out set_new_shape() for TFLReshape (#8950)

This commit extracts out `set_new_shape()`, a helper function to set
both of TFLReshape's new shape information.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[neurun] Fix for const model ouput (#8799)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 03:55:03 +0000 (12:55 +0900)]
[neurun] Fix for const model ouput (#8799)

* [neurun] Fix for const model ouput

Handle properly when a model has const model outputs.
This makes it not crash however the results are still incorrect since
Const values are not initialized yet.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Do not force NHWC for unused const tensors

* Add more comments

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Remove fix in Source and Sink

4 years ago[neurun] Remove useless dependency in Operation (#8971)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 18 Nov 2019 02:17:52 +0000 (11:17 +0900)]
[neurun] Remove useless dependency in Operation (#8971)

Operation used to own a `LowerInfo` class in it, but it is no longer
needed.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Selective TFLNode summary impl (#8968)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Sun, 17 Nov 2019 23:46:43 +0000 (08:46 +0900)]
[exo] Selective TFLNode summary impl (#8968)

With this commit, developer can implement TFLNode summary selectively

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[neurun] Remove unnecessary map in base_loader (#8955)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Fri, 15 Nov 2019 13:10:25 +0000 (16:10 +0300)]
[neurun] Remove unnecessary map in base_loader (#8955)

Set Operand data right when creating it from Tensor, `_tensor_to_operand` map is not needed.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[neurun] Remove unnecessary maps in base_loader (#8953)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Fri, 15 Nov 2019 13:01:41 +0000 (16:01 +0300)]
[neurun] Remove unnecessary maps in base_loader (#8953)

Maps `_op_code_to_builtin_op` and `_opcode_index_to_custom_opcode` aren't necessary -- all the data they provide can be got from `_model` private variable.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[exo] Rename opname to tfl_opname explicitly (#8964)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 09:23:21 +0000 (18:23 +0900)]
[exo] Rename opname to tfl_opname explicitly (#8964)

This commit renames opname to tfl_opname explicitly.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] Export CircleInstanceNorm (#8961)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 08:22:17 +0000 (17:22 +0900)]
[exo] Export CircleInstanceNorm (#8961)

This commit implements export stage for CircleInstanceNorm

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[neurun] Fix indentation of DataflowExecutor (#8966)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 08:22:09 +0000 (17:22 +0900)]
[neurun] Fix indentation of DataflowExecutor (#8966)

This commit fixes indentation of DataflowExecutor

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[exo] Good to remove TODO comment (#8965)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 07:57:00 +0000 (16:57 +0900)]
[exo] Good to remove TODO comment (#8965)

Removing condition for TODO comment satisfied. Let's remove this.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[dredd-rule-lib] functions to check error conditions (#8942)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 15 Nov 2019 07:44:41 +0000 (16:44 +0900)]
[dredd-rule-lib] functions to check error conditions (#8942)

* [dredd-rule-lib] functions to check error conditions

This removes duplicated if statements and adds some functions for error conditions.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* using vars instead of  and

4 years ago[exo] Rename FormattedGraph file name (#8951)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 03:26:14 +0000 (12:26 +0900)]
[exo] Rename FormattedGraph file name (#8951)

This commit renames following file name:
- TFLFormattedGraph.* > ExoFormattedGraph.*

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] Type and Shape inference for Circle dialect (#8949)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 03:23:31 +0000 (12:23 +0900)]
[exo] Type and Shape inference for Circle dialect (#8949)

This commit introduces type and shape inference service for Circle
dialect

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[exo] Visit CircleNode to export operation (#8948)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 01:53:04 +0000 (10:53 +0900)]
[exo] Visit CircleNode to export operation (#8948)

* [exo] Visit CircleNode to export operation

This commit registers Circle dialect visitor to export operation

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Remove unused arg

4 years agoFix a bug of tconv layer of ncnn (#8947)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 15 Nov 2019 01:48:28 +0000 (10:48 +0900)]
Fix a bug of tconv layer of ncnn (#8947)

This commit fixes a bug of tconv layer of ncnn.
  - Add initializing output buffer to zero

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[exo] Remove unused stdex header (#8952)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 14 Nov 2019 23:45:04 +0000 (08:45 +0900)]
[exo] Remove unused stdex header (#8952)

This commit removes unused stdex header for exo conversions.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
4 years ago[mir-onnx-importer] Fix paddings during import (#8893)
Alexander Efimov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 19:01:07 +0000 (22:01 +0300)]
[mir-onnx-importer] Fix paddings during import (#8893)

Fix paddings if they are too big: remove redundant from right padding

Signed-off-by: Alexander Efimov <a.efimov@samsung.com>
4 years ago[nnc/interpreter] Quantized kernels for supporting InceptionV4 (#8669)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 16:35:24 +0000 (19:35 +0300)]
[nnc/interpreter] Quantized kernels for supporting InceptionV4 (#8669)

* Supported quantized kernels for operations: Concat, FC, MaxPool,
Softmax

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[mir-tflite-importer] Support fused bias on FullyConnected (#8670)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 16:33:59 +0000 (19:33 +0300)]
[mir-tflite-importer] Support fused bias on FullyConnected (#8670)

* Supported creation FC with fused bias for quantized models

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[nnc] make interpreter faster in debug (#8931)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 12:30:00 +0000 (15:30 +0300)]
[nnc] make interpreter faster in debug (#8931)

Rewrite FC layer for 2d case using no mir datatypes
This makes FC layer 20-40 times faster in debug mode

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
4 years ago[runtime/gbs] Fix coverage build (#8940)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 14 Nov 2019 10:06:31 +0000 (19:06 +0900)]
[runtime/gbs] Fix coverage build (#8940)

- Update build type setting for test (coverage) build
- Move optimization level setting to ApplyCompileFlags.cmake
  - Optimization level and debug setting in target_compile_option is not working
  - COVERAGE_BUILD is not used any more

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[exo] Circle IR for Instance norm (#8878)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 14 Nov 2019 09:06:09 +0000 (18:06 +0900)]
[exo] Circle IR for Instance norm (#8878)

* [exo] Circle IR for Instance norm

This commit introduces CircleInstanceNorm IR

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Note on input