platform/core/ml/nnfw.git
4 years agoMove logging of FillOperandData to the time filling data (#9139)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 22 Nov 2019 07:24:23 +0000 (16:24 +0900)]
Move logging of FillOperandData to the time filling data (#9139)

This commit moves logging of FillOperandData to the time filling data.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[neurun] Introduce an API to set which backends to use (#9099)
여지환/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 22 Nov 2019 07:13:20 +0000 (16:13 +0900)]
[neurun] Introduce an API to set which backends to use (#9099)

* [neurun] Introduce an API to set which backends to use

Define `nnfw_set_preferred_backends` API to set `BACKENDS` configuration variable
- Only the backends specified at `BACKENDS` are loaded on prepare phase

Signed-off-by: JiHwan Yeo <jihwan.yeo@samsung.com>
* Rename nnfw_set_default_backend to nnfw_set_available_backends

nnfw_set_available_backends set BACKENDS

4 years ago[docs] Update System Test Document (STD) (#9079)
Alexander Efimov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Fri, 22 Nov 2019 06:50:38 +0000 (09:50 +0300)]
[docs] Update System Test Document (STD) (#9079)

Added output of NN Compiler and NN Runtime system tests

Signed-off-by: Alexander Efimov <a.efimov@samsung.com>
4 years ago[exo] Supported export Fully Connected node (#9017)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Fri, 22 Nov 2019 06:50:05 +0000 (09:50 +0300)]
[exo] Supported export Fully Connected node (#9017)

* Created TFLFullyConnected node on exo dialect
* Added TypeInference and ShapeInference for this node
* Created MatMulConverter
* Added some helpers with MatrixEncode and MatrixDecode

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[neurun/benchmark] Use linear scheduler for operator kernel test (#9133)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 22 Nov 2019 06:48:51 +0000 (15:48 +0900)]
[neurun/benchmark] Use linear scheduler for operator kernel test (#9133)

Operator kernel test don't need to check each scheduler's performance, so use linear only

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years agoIntroduce pepper-assert (#9124)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 22 Nov 2019 06:23:51 +0000 (15:23 +0900)]
Introduce pepper-assert (#9124)

This commit introduces "pepper-assert" library. This library will
provides various helpers that makes it easy to manage asserts in
the code base.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
4 years ago[gen_golden] replace deprecated tf.ConfigProto (#9131)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 05:05:54 +0000 (14:05 +0900)]
[gen_golden] replace deprecated tf.ConfigProto (#9131)

tf.Config.Proto is deprecated. I replaced it with tf.compat.v1.Proto.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[nncc] Skeleton of README.md for nncc in nnas SDK 1.0 (#9034)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 03:09:22 +0000 (12:09 +0900)]
[nncc] Skeleton of README.md for nncc in nnas SDK 1.0 (#9034)

* [nncc] Skeleton of README.md for SDK 1.0

This is a skeleton README document for SDK 1.0.
Note that main readers are developers who want to compile Tensorflow models.
Please, write any part you want to write after making an issue.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* adding contents about nnpackage

* explaining nnas sdk

* NNCC to nncc

* numbering on section

* moving license into 1. nnas SDK 1.0

* added semantic versioning. Changed version 1.0 to 1.0.0

4 years ago[gen_golden] suppress warnings (#9097)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 02:55:29 +0000 (11:55 +0900)]
[gen_golden] suppress warnings (#9097)

It suppresses two kinds of warnings:

- Future warnings
- TensorFlow Information

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[gen_golden] Dynamically allocate GPU memory for TensorFlow (#9125)
여지환/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 22 Nov 2019 02:55:03 +0000 (11:55 +0900)]
[gen_golden] Dynamically allocate GPU memory for TensorFlow (#9125)

Without this PR, running gen_golden.py on nvidia-docker produces errors

Setting one gpu option for session
- `config.gpu_options.allow_growth = True`

Signed-off-by: JiHwan Yeo <jihwan.yeo@samsung.com>
4 years ago[moco-tf] Fix typo scalar (#9123)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 02:26:07 +0000 (11:26 +0900)]
[moco-tf] Fix typo scalar (#9123)

This will fix scalar type in ConcatV2Canonicalizer

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[neurun] Do not use name to check Operation type (#9110)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 22 Nov 2019 01:07:37 +0000 (10:07 +0900)]
[neurun] Do not use name to check Operation type (#9110)

Do not use name to check Operation type, use OpCode instead

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[tf2circle-ui-check] fix typos (#9111)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 01:05:22 +0000 (10:05 +0900)]
[tf2circle-ui-check] fix typos (#9111)

Fix types from "circel" to "circle".

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years agoIntroduce TensorRegister registering tensor info of cpu (#9108)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 22 Nov 2019 01:00:54 +0000 (10:00 +0900)]
Introduce TensorRegister registering tensor info of cpu (#9108)

This comit introduces TensorRegister registering tensor info of cpu.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years agoIntroduce TensorRegister registering tensor info of srcn (#9107)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 22 Nov 2019 01:00:31 +0000 (10:00 +0900)]
Introduce TensorRegister registering tensor info of srcn (#9107)

This commit introduces TensorRegister registering tensor info of srcn.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
4 years ago[res/TensorFlowTests] Wrong models: UI_0002, UI_0003 (#9109)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 22 Nov 2019 01:00:16 +0000 (10:00 +0900)]
[res/TensorFlowTests] Wrong models: UI_0002, UI_0003 (#9109)

This adds two wrong models:
- UI_0002: Cannot find node whose name is input node name of Conv2D
- UI_0003: two nodes have the same name

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years agoIntroduce AclTensorRegister registering tensor info of acl (#9106)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 22 Nov 2019 00:59:37 +0000 (09:59 +0900)]
Introduce AclTensorRegister registering tensor info of acl (#9106)

This commit introduces Introduce AclTensorRegister registering tensor info of acl.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
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>