platform/core/ml/nnfw.git
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

4 years ago[moco] Introduce find_node_byname (#8938)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 09:04:44 +0000 (18:04 +0900)]
[moco] Introduce find_node_byname (#8938)

This will intrdocue moco GraphHelper with find_node_byname() that quries node by name.

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[dredd] applying error handling code to runner.sh (#8935)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 07:09:21 +0000 (16:09 +0900)]
[dredd] applying error handling code to runner.sh (#8935)

* [dredd] applying error handling code to runner.sh

This applies error handling code into runner.sh that was applied in #8888, #8910

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

4 years agoRefactory benchmark scripts to unify (#8838)
Dilshodzhon Poshshoev/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 07:08:43 +0000 (10:08 +0300)]
Refactory benchmark scripts to unify (#8838)

1. Most of the script weren't up-to-date
2. Most of the steps are the same, so move them as a separate functions to
common.sh

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
4 years agoDisable ABI compatibility warning (#8625)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 07:07:11 +0000 (10:07 +0300)]
Disable ABI compatibility warning (#8625)

Disable annoying ABI compatibility warnings.

There are lots of such warnings when building the runtime (with GCC >= 7.1).

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years agoCompiler: remove ENABLE_CONTRIB_BUILD cmake option (#8941)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 06:54:01 +0000 (15:54 +0900)]
Compiler: remove ENABLE_CONTRIB_BUILD cmake option (#8941)

This will remove nncc ENABLE_CONTRIB_BUILD cmake option that is not used anymore

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[neurun] Eliminate OperandIndex in Split::Param (#8917)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 06:51:07 +0000 (09:51 +0300)]
[neurun] Eliminate OperandIndex in Split::Param (#8917)

Make `axis` and `num_splits` static attributes of the operation.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[nnpkg_tools] remove debug print and unnecessary line (#8937)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 06:36:43 +0000 (15:36 +0900)]
[nnpkg_tools] remove debug print and unnecessary line (#8937)

- fuse_instance_norm.js
  : remove all console.debug statement to suppress output
- gen_golden.py
  : remove dead code

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[neurun] Eliminate OperandIndex in StridedSlice::Param (#8916)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 06:26:03 +0000 (09:26 +0300)]
[neurun] Eliminate OperandIndex in StridedSlice::Param (#8916)

* Make `starts`, `ends` and `strides` inputs to the operation.
* Make `begin_axis_mask`, `end_axis_mask`, `shrink_axis_mask` static attributes of the operation.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[neurun] Eliminate OperandIndex in TopKV2::Param (#8930)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Thu, 14 Nov 2019 05:33:41 +0000 (08:33 +0300)]
[neurun] Eliminate OperandIndex in TopKV2::Param (#8930)

Make `k` static attribute of the operation.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[pb2nnpkg] introduce pb_select_graph (#8936)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 05:27:59 +0000 (14:27 +0900)]
[pb2nnpkg] introduce pb_select_graph (#8936)

pb2nnpkg uses python script to select subgraph.
It does not require you to build tensorflow any longer.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[moco] Set name for TFNode when importing (#8933)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 03:22:02 +0000 (12:22 +0900)]
[moco] Set name for TFNode when importing (#8933)

This will set name for TFNode when importing from TensorFlow NodeDef

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[nnpkg-tools] introduce pb2nnpkg (#8920)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 14 Nov 2019 02:07:24 +0000 (11:07 +0900)]
[nnpkg-tools] introduce pb2nnpkg (#8920)

It introduces pb2nnpkg, which gets pb file, input name, output name.
Then, generates pb of selected subgraph, and nnpackage with golden data.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
4 years ago[neurun] Inline one-liner of ProfileObserver (#8914)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 14 Nov 2019 00:59:28 +0000 (09:59 +0900)]
[neurun] Inline one-liner of ProfileObserver (#8914)

This commit inlines one-liner function which is only used once for
simplicity.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[moco] Add TFNode name attribute (#8927)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 13 Nov 2019 22:03:21 +0000 (07:03 +0900)]
[moco] Add TFNode name attribute (#8927)

This will introduce name attribute for TFNode so that we can store and fetch string name of each nodes from TensorFlow NodeDef

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[mir] FullyConnected ctor with fused bias (#8668)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Wed, 13 Nov 2019 17:32:18 +0000 (20:32 +0300)]
[mir] FullyConnected ctor with fused bias (#8668)

* Added FC ctor with fused bias
* Fixed FC copying

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[moco] Test for TFNode name attribute (#8922)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 13 Nov 2019 06:20:26 +0000 (15:20 +0900)]
[moco] Test for TFNode name attribute (#8922)

This will introduce a test for disabled TFNode name attribute and query TFNode by name
- disabled part should work after related codes land

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
4 years ago[tf2tflite_dredd_pbtxt_test] error handling using trap (#8910)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 13 Nov 2019 05:02:00 +0000 (14:02 +0900)]
[tf2tflite_dredd_pbtxt_test] error handling using trap (#8910)

* [tf2tflite_dredd_pbtxt_test] error handling using trap

This adds error handling using trap command.

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

4 years ago[runtime/gbs] Revise nnfw.spec for tizen runtime rpm build (#8908)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 13 Nov 2019 04:30:22 +0000 (13:30 +0900)]
[runtime/gbs] Revise nnfw.spec for tizen runtime rpm build (#8908)

- Build twice
  - Build for runtime (disable environment variable setting)
  - Build for test (enable environment variable setting)
- Enable extra option
- Use command instead of makefile
- Change file copy to install for library install
- Set required packages for package install
- Set own directory

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years ago[mir2loco] Introduce Transpose op transformer (#8871)
Pavel Iliutchenko/AI Tools Lab /SRR/Engineer/Samsung Electronics [Tue, 12 Nov 2019 14:53:17 +0000 (17:53 +0300)]
[mir2loco] Introduce Transpose op transformer (#8871)

* Implemented TransposeOp transformer and test for it

Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
4 years ago[neurun] Verbose exception message for Backends (#8901)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 12 Nov 2019 09:55:01 +0000 (18:55 +0900)]
[neurun] Verbose exception message for Backends (#8901)

ShapeFixer exception message shows that it is from which module and its
operation name.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[runtime/pkg] Create runtime package in Makefile (#8856)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 12 Nov 2019 05:29:18 +0000 (14:29 +0900)]
[runtime/pkg] Create runtime package in Makefile (#8856)

Using makefile, create runtime package
Ex. For ubuntu, armv7l
"CROSS_BUILD=1 TARGET_ARCH=armv7l BUILD_TYPE=release make create_tar"

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
4 years agoFix warnings generated for Index class (#8626)
Sergei Barannikov/AI Tools Lab /SRR/Engineer/Samsung Electronics [Tue, 12 Nov 2019 05:26:23 +0000 (08:26 +0300)]
Fix warnings generated for Index class (#8626)

* Fix the type of the parameter of the copy constructor of the `Index` class. This silences -Wdeprecated-copy GCC 8.1+ warnings.
* Make the copy constructor and copy assignment operator defaulted. This silences clang-tidy warnings suggesting to pass objects of `Index` class by const reference.
* Fix description of inequality operators.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
4 years ago[nnfwapi] Verbose error message on model load (#8890)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 12 Nov 2019 05:06:25 +0000 (14:06 +0900)]
[nnfwapi] Verbose error message on model load (#8890)

Print message of thrown `std::exception` objects.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
4 years ago[tf2tflite-dredd-pbtxt-test] Error handling for runner.sh (#8888)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 12 Nov 2019 03:49:31 +0000 (12:49 +0900)]
[tf2tflite-dredd-pbtxt-test] Error handling for runner.sh (#8888)

This adds error handling for runner.sh.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[exo] Revising convert(..) method using DomainConverter (#8895)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 12 Nov 2019 03:47:26 +0000 (12:47 +0900)]
[exo] Revising convert(..) method using DomainConverter (#8895)

This revised convert(..) methond using DomainConverter.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
4 years ago[neurun] Remove depedency on nnapi-header (#8889)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 12 Nov 2019 01:35:29 +0000 (10:35 +0900)]
[neurun] Remove depedency on nnapi-header (#8889)

Remove core lib's depedency on nnapi-header which is no longer needed.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years ago[onnx2circle] Initial version of onnx2circle (#8872)
Alexander Efimov/AI Tools Lab/./Samsung Electronics [Mon, 11 Nov 2019 13:14:36 +0000 (16:14 +0300)]
[onnx2circle] Initial version of onnx2circle (#8872)

Add utility to convert onnx networks to circle

Signed-off-by: Alexander Efimov <a.efimov@samsung.com>
5 years ago[logo] Fix SimplifyDomainConversionPass (#8874)
Alexander Efimov/AI Tools Lab/./Samsung Electronics [Mon, 11 Nov 2019 12:29:03 +0000 (15:29 +0300)]
[logo] Fix SimplifyDomainConversionPass (#8874)

- Add test for filter elimination optimization
- Fix assert in filter elimination optimization

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
5 years ago[tf2circle-dredd-pb-test] Introducing tf2circle-dredd-pb-test (#8883)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 11 Nov 2019 07:15:18 +0000 (16:15 +0900)]
[tf2circle-dredd-pb-test] Introducing tf2circle-dredd-pb-test (#8883)

* [tf2circle-dredd-pb-test] Introducing tf2circle-dredd-pb-test

tf2circle-dredd-pb-test is introduced, which is a test for circle files generated from pb files in ./contrib dir.

Note that files in the PR is copied files from tf2tflite-dredd-pb-test, after replacing string "tflite" and "tfl" to "circle".

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* remove nncc_find_resource(TensorFlowTests)

5 years ago[tf2tflite-dredd-pb-test] remove nncc_find_resource(TensorFlowTests) (#8884)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 11 Nov 2019 06:21:27 +0000 (15:21 +0900)]
[tf2tflite-dredd-pb-test] remove nncc_find_resource(TensorFlowTests) (#8884)

nncc_find_resource(TensorFlowTests) was removed from CMakeLists.txt.
(This resource is not required by tf2tflite-dredd-pb-test)

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[circle-inspect] Adding "--conv2d_weight" support (#8879)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 11 Nov 2019 06:20:29 +0000 (15:20 +0900)]
[circle-inspect] Adding "--conv2d_weight" support (#8879)

* [circle-inspect] Adding "--conv2d_weight" support

This adds "--conv2d_weight" support for circle-inspect. Modified code was from _tfl_inspect_.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* Update compiler/circle-inspect/driver/Driver.cpp

Thanks!

Co-Authored-By: hyunsik-yoon <hyunsik.yoon@samsung.com>
5 years ago[tf2circle-dredd-pbtxt-test] Introducing tf2circle-dredd-pbtxt-test (#8882)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 11 Nov 2019 06:11:00 +0000 (15:11 +0900)]
[tf2circle-dredd-pbtxt-test] Introducing tf2circle-dredd-pbtxt-test (#8882)

* [tf2circle-dredd-pbtxt-test] Introducing tf2circle-dredd-pbtxt-test

tf2circle-dredd-pbtxt-test is introduced, which is rule base test for circle files generated from pbtxt files under `res/TensorFlowTests/`.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* Update compiler/tf2circle-dredd-pbtxt-test/runner.sh

thanks, bot.

Co-Authored-By: hyunsik-yoon <hyunsik.yoon@samsung.com>
5 years agoAdd TODO comment into IConstantInitializer. (#8880)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 11 Nov 2019 06:05:25 +0000 (15:05 +0900)]
Add TODO comment into IConstantInitializer. (#8880)

This commit adds TODO comment checking if tensor has been allocated into IConstasntInitializer.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years ago[runtime] Remove default LD_LIBRARY_PATH (#8876)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Nov 2019 05:45:05 +0000 (14:45 +0900)]
[runtime] Remove default LD_LIBRARY_PATH (#8876)

Remove LD_LIBRARY_PATH setting except pacl test because rpath is set on install

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[exo] FusedActFunc as Circle NodeMixin (#8877)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 11 Nov 2019 04:29:07 +0000 (13:29 +0900)]
[exo] FusedActFunc as Circle NodeMixin (#8877)

This commit introduces Circle NodeMixin, and as its first use case,
FusedActFunc

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
5 years ago[nnfw/cmd] Revise workspace setting in command (#8844)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 11 Nov 2019 03:58:38 +0000 (12:58 +0900)]
[nnfw/cmd] Revise workspace setting in command (#8844)

- Use absolute path as defulat: workspace, build path, install path
- Move common build path configuration into build.configuration
- Use build and install command in makefile
- Simplify to use absolute path in Makefile

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[exo] Delete removable headers for NodeImpl (#8818)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 11 Nov 2019 03:55:15 +0000 (12:55 +0900)]
[exo] Delete removable headers for NodeImpl (#8818)

This commit deletes removable headers for TFL dialect and Circle dialect
NodeImpl

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