platform/core/ml/nnfw.git
5 years ago[moco/tf] Implement forward node elimination (#4027)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 06:41:02 +0000 (15:41 +0900)]
[moco/tf] Implement forward node elimination (#4027)

This commit implements forward node elimination as a part of moco.tf
compilation pipeline.

Note that this transform is off by default.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Import to Importer (#4019)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 05:23:37 +0000 (14:23 +0900)]
[moco/tf] Import to Importer (#4019)

* [moco/tf] Import to Importer

This will rename Import class to Importer
- abd method load() to `import`

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

5 years ago[moco_tf] Introduce TFDialect (#4020)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 05:13:10 +0000 (14:13 +0900)]
[moco_tf] Introduce TFDialect (#4020)

* [moco_tf] Introduce TFDialect

This will introduce TFDialect inherited from loco::Dialect to provide IRs for TensorFlow dialect.

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

5 years ago[moco/tf] Use TensorFlow (#4026)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 05:09:48 +0000 (14:09 +0900)]
[moco/tf] Use TensorFlow (#4026)

This will fix comments using Tensorflow to TensorFlow

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mocotest] Test for Mul (#4024)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 04:25:43 +0000 (13:25 +0900)]
[mocotest] Test for Mul (#4024)

This will introduce test for Mul node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mocotest] Test for Add (#4023)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 04:25:11 +0000 (13:25 +0900)]
[mocotest] Test for Add (#4023)

This will introduce Test for Add Node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[tf2tflite] Pass test configurations via .config file (#4017)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 04:08:55 +0000 (13:08 +0900)]
[tf2tflite] Pass test configurations via .config file (#4017)

* [tf2tflite] Pass test configurationss via .config file

Now, "testall" script takes test configurations via .config
file, which makes it easy to re-invoke tests from command-line.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update comment to reflect the actual implementation

5 years agoAdd CONTRIBTUTORS list (#4021)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 03:52:44 +0000 (12:52 +0900)]
Add CONTRIBTUTORS list (#4021)

- Add contributor list, as is.
- Generated by `git shortlog -se | cut -f2` with `.mailmap` file.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years ago[moco.tf] Introduce Optimizer (#4013)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 03:42:24 +0000 (12:42 +0900)]
[moco.tf] Introduce Optimizer (#4013)

This commit introduces Optimizer class and updates Frontend to invoke
this optimization after import.

This Optimizer will performs dedicated transforms on imported graphs,
but the current implementation serves just as a placeholder and has
no transforms yet.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] modify struct to class (#4016)
채성우/On-Device Lab(SR)/Engineer/삼성전자 [Sun, 30 Jun 2019 23:27:22 +0000 (08:27 +0900)]
[loco] modify struct to class (#4016)

This commit modify struct to class in Nodes.h for unity

Signed-off-by: seongwoo <sw4670.chae@samsung.com>
5 years ago[tf2tflite] Add TF_SMALL_NET_0000 test (#4012)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 04:29:58 +0000 (13:29 +0900)]
[tf2tflite] Add TF_SMALL_NET_0000 test (#4012)

This commit adds TF_SMALL_NET_0000 test which includes a simple network
consists of Conv2D and MaxPool.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Check references on node destruction (#4010)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 04:29:20 +0000 (13:29 +0900)]
[loco] Check references on node destruction (#4010)

This commit adds an assert to check references in Node destructor in
order to detect dangling references as early as possible.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tf2tflite] Support logging (#4009)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 04:02:53 +0000 (13:02 +0900)]
[tf2tflite] Support logging (#4009)

Now, users are able to enable tf2tflite logging by setting TF2TFLITE_Log
environment variable as a non-zero value.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Support node destruction (#4006)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 01:46:55 +0000 (10:46 +0900)]
[loco] Support node destruction (#4006)

Some optimizations (e.g. dead node elimination) needs node destruction, but
it is currently impossible to destroy nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco.tf] Extract Phase infrastructure (#4008)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 01:29:08 +0000 (10:29 +0900)]
[moco.tf] Extract Phase infrastructure (#4008)

This commit extracts "transform" loop in Import as reusable Phase
class.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Introduce CanonicalNodeDecl.h (#4007)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 28 Jun 2019 01:25:38 +0000 (10:25 +0900)]
[loco] Introduce CanonicalNodeDecl.h (#4007)

The current implementation requires users to include CanonicalNodeImpl.h
additionally.

To eliminate such burden, this commit introduces CanonicalNodeDecl.h and
revises CanonicalNode.h to includes both decl/impl headers.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Introduce Node.opnum API (#4004)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 07:14:49 +0000 (16:14 +0900)]
[loco] Introduce Node.opnum API (#4004)

This opnum API allows us to check the type of nodes without using
dynamic_cast.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locop] Support TensorConcat (#4001)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 07:10:32 +0000 (16:10 +0900)]
[locop] Support TensorConcat (#4001)

TensorConcat now has its own pretty printer.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] How to convert TensorFlow Const (#4002)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 07:10:18 +0000 (16:10 +0900)]
[moco/tf] How to convert TensorFlow Const (#4002)

Conversion.md now explains how to convert T/F Const node (which
tf.constant API internally generates) into loco.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Require Node to implement dialect method (#3999)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 06:04:41 +0000 (15:04 +0900)]
[loco] Require Node to implement dialect method (#3999)

* [loco] Require Node to implement dialect method

The current design provides a default implementation. This commit
removes this default implementation of dialect method and requires each
node to implement it.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Return const Dialect *

5 years ago[hermes/std] Introduce EnvConfig (#4000)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 04:32:27 +0000 (13:32 +0900)]
[hermes/std] Introduce EnvConfig (#4000)

This commit introduces a reusable EnvConfig implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco_tf] Introduce common import in Frontend (#3992)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 27 Jun 2019 03:05:14 +0000 (12:05 +0900)]
[moco_tf] Introduce common import in Frontend (#3992)

* [moco_tf] Introduce common import in Frontend

This will introduce private import method in Frontend as common of load

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

5 years agoExtract nnkit-misc from nnkit (#3996)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 02:22:19 +0000 (11:22 +0900)]
Extract nnkit-misc from nnkit (#3996)

Let's extract nnkit-misc that implements various helpers for writing
nnkit extensions.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco-tf] Revisit tests as Import (#3991)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 27 Jun 2019 01:24:02 +0000 (10:24 +0900)]
[moco-tf] Revisit tests as Import (#3991)

This will revisit unit tests as Import and do Import testing

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] convert pb bool attribute to C++ bool (#3995)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 23:44:34 +0000 (08:44 +0900)]
[moco/tf] convert pb bool attribute to C++ bool (#3995)

This commit adds get_bool_attr(..) to access tensorflow bool attr

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[moco.log] Reflect hermes design change (#3994)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 22:11:31 +0000 (07:11 +0900)]
[moco.log] Reflect hermes design change (#3994)

This commit updates moco.log implementations according to the recent
hermes design update.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoExtract nnkit-onnxrt from nnkit (#3989)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 10:41:11 +0000 (19:41 +0900)]
Extract nnkit-onnxrt from nnkit (#3989)

Let's allow each module to depend on nnkit-onnxrt.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Support post_order_traversal over incomplete graphs (#3990)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 10:33:53 +0000 (19:33 +0900)]
[loco] Support post_order_traversal over incomplete graphs (#3990)

The current implementation does not work if a graph is incomplete.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[hermes] Use generic Config on reload (#3985)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 10:00:32 +0000 (19:00 +0900)]
[hermes] Use generic Config on reload (#3985)

Source now has a default "reload" method implementation which uses
generic configure method.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco_tf] Revise Frontend to use Import (#3986)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 09:30:56 +0000 (18:30 +0900)]
[moco_tf] Revise Frontend to use Import (#3986)

This will change Frontend to use Import. Existing test is coverted by Import so it is removed.

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-tf] introduce Import (#3981)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 08:15:06 +0000 (17:15 +0900)]
[moco-tf] introduce Import (#3981)

* [moco-tf] introduce Import

This will introduce Import class part from Frontend that converts Tensorflow graphdef to loco graph

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

* add final

5 years ago[moco_tf] parse graphdef for tests (#3983)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 08:03:21 +0000 (17:03 +0900)]
[moco_tf] parse graphdef for tests (#3983)

This will introduce parse_graphdef() helper for unit tests that will parse inmemory pbtxt to grapdef.

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco.log] Add source-generic configure method (#3984)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 07:59:56 +0000 (16:59 +0900)]
[moco.log] Add source-generic configure method (#3984)

moco::LoggerConfig now has source-generic configure method (not used
yet).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locop] Show tensor shape attribute (#3980)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 07:58:58 +0000 (16:58 +0900)]
[locop] Show tensor shape attribute (#3980)

* [locop] Show tensor shape attribute

locop now shows tensor shape for Push, Pull, and ConstGen nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update test

5 years ago[loco] Introduce mutable canonical node visitor (#3979)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 06:05:01 +0000 (15:05 +0900)]
[loco] Introduce mutable canonical node visitor (#3979)

This commit allows users to define a visitor that may update each node,
and use it.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[hermes] Extract SourceSetting class (#3976)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 04:26:36 +0000 (13:26 +0900)]
[hermes] Extract SourceSetting class (#3976)

* [hermes] Extract SourceSetting class

This commit extracts SourceSetting class from Source as the first step
toward generic (reusable) Config support.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix a typo

5 years agoExtract nnkit-tf from nnkit (#3974)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 01:38:27 +0000 (10:38 +0900)]
Extract nnkit-tf from nnkit (#3974)

This commit extracts nnkit-tf from nnkit to make it easy to manage
internal dependencies.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco_tf] add get_float_attr (#3973)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 00:48:16 +0000 (09:48 +0900)]
[moco_tf] add get_float_attr (#3973)

This will add get_float_attr method for accessing attribute float value for tensorflow node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years agoExtract nnkit-mocotf from nnkit (#3970)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 06:27:33 +0000 (15:27 +0900)]
Extract nnkit-mocotf from nnkit (#3970)

This commit extracts nnkit-mocotf from nnkit to make it easy to manage
dependencies among modules.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoSkip copyright check if no candidates exists (#3969)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 06:19:39 +0000 (15:19 +0900)]
Skip copyright check if no candidates exists (#3969)

The current implementation will check all the checked-in files if it
cannot find any cnadidate file from the project of interest.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoBuild Abseil C++ library (#3968)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 04:36:59 +0000 (13:36 +0900)]
Build Abseil C++ library (#3968)

This commit updates nncc Abseil package to build C++ sources in Abseil.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[nnkit/moco/tf] Reduce directory nesting level (#3965)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 04:06:15 +0000 (13:06 +0900)]
[nnkit/moco/tf] Reduce directory nesting level (#3965)

This commit reduces the directory nesting level of
nnkit_support_moco_tf library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tf2tflite] update requires.cmake (#3966)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 04:06:05 +0000 (13:06 +0900)]
[tf2tflite] update requires.cmake (#3966)

This will update tf2tflite to require moco-tf instread of moco

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[locop] Implement Forward Node Description Builder (#3957)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 03:41:26 +0000 (12:41 +0900)]
[locop] Implement Forward Node Description Builder (#3957)

This commit implements a dedicated node description builder for
Forward nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] extract moco-tf (#3963)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 03:32:50 +0000 (12:32 +0900)]
[moco/tf] extract moco-tf (#3963)

* [moco/tf] extract moco-tf

This will extract nested moco tf frontend to moco-tf

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

* fix requires.cmake

* apply master changes

5 years ago[locomotiv] shortening error check (#3959)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 01:59:23 +0000 (10:59 +0900)]
[locomotiv] shortening error check (#3959)

shortening error check by using locomotiv::validate()

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years agoProtobuf_Generate with LIBRARIES (#3964)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 01:30:52 +0000 (10:30 +0900)]
Protobuf_Generate with LIBRARIES (#3964)

Protobuf_Generate(PREFIX ...) now returns required libraries through
<PREFIX>_LIBRARIES variable.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Introduce transform name getter (#3954)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 01:06:44 +0000 (10:06 +0900)]
[moco/tf] Introduce transform name getter (#3954)

This commit extends moco.tf Transform interface with name getter. This
name getter facilitates debugging.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoAdd COPYRIGHT (#3961)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 23:58:28 +0000 (08:58 +0900)]
Add COPYRIGHT (#3961)

- Add COPYRIGHT notice to join Samsung Inner Source Project
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoExtract tfinfo from nnkit (#3955)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 10:41:14 +0000 (19:41 +0900)]
Extract tfinfo from nnkit (#3955)

tfinfo is quite general, and thus useful for implementing TensorFlow
toolchains (e.g. tf2tflite).

To use tfinfo, however, such toolchains should depend on nnkit as
tfinfo currently lives inside nnkit.

This commit extracts tfinfo from nnkit to make it possible to reuse
tfinfo without having (heavy) nnkit dependency.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tfldump] Dumping attrs of custom op (#3949)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 10:40:45 +0000 (19:40 +0900)]
[tfldump] Dumping attrs of custom op (#3949)

* [tfldump] Dumping attrs of custom op

This commit enables tfldump to print custom op's attribute information.

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

5 years ago[loco] Introduce CanonicalNodeDescBuilder (#3953)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 10:34:20 +0000 (19:34 +0900)]
[loco] Introduce CanonicalNodeDescBuilder (#3953)

This commit introduces CanonicalNodeDescBuilder class which visits each
CanonicalNode and creates a corresponding node description.

The current implementation uses the default fallback for all the nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Visit constant nodes (#3951)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 09:38:34 +0000 (18:38 +0900)]
[loco] Visit constant nodes (#3951)

It is impossible to visit constant nodes with the current
implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] dump domain for shapeinferencedata (#3948)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 08:02:18 +0000 (17:02 +0900)]
[moco/tf] dump domain for shapeinferencedata (#3948)

This will add domain string for dump of shape inference data in logging

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Show graphs before and after transform (#3943)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 07:49:41 +0000 (16:49 +0900)]
[moco/tf] Show graphs before and after transform (#3943)

Now, moco T/F frontend dumps a graph before and after transform when
logging is enabled.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locop] Use const loco::Node * (if possible) (#3946)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 07:49:29 +0000 (16:49 +0900)]
[locop] Use const loco::Node * (if possible) (#3946)

This commit rewrites some code that takes loco::Node * as input to take
const loco::Node * instead.

This is a preliminary step to use loco visitor.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Simplify CanonicalNodeVisitor default fallback (#3945)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 07:44:42 +0000 (16:44 +0900)]
[loco] Simplify CanonicalNodeVisitor default fallback (#3945)

This commit simplifies default visitor fallback implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] constant input for avgpool2d test (#3934)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 07:36:51 +0000 (16:36 +0900)]
[locomotiv] constant input for avgpool2d test (#3934)

* [locomotiv] constant input for avgpool2d test

This will revise avgpool2d test with constant input for the python example code in the comment for verification.

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

* remove unnecessary and match indentation

5 years ago[moco/tf] remove unnecessary comments (#3947)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 07:32:00 +0000 (16:32 +0900)]
[moco/tf] remove unnecessary comments (#3947)

This will remove unnecessary comments in FixShapeTransfrom test.
- graph is local and cleaning of annotation will be done when graph destructor is called

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Update Conversion.md with Identity (#3938)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 07:29:08 +0000 (16:29 +0900)]
[moco/tf] Update Conversion.md with Identity (#3938)

* [moco/tf] Update Conversion.md with Identity

This commit updates Conversion.md to explain how to convert TensorFlow
Identity node into loco.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use print(...)

5 years ago[tf2tflite] Add copyright notice (#3939)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 07:20:09 +0000 (16:20 +0900)]
[tf2tflite] Add copyright notice (#3939)

Copyright notice is currently missing in Driver.cpp.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] revisit graph cleanup (#3940)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 07:16:17 +0000 (16:16 +0900)]
[moco/tf] revisit graph cleanup (#3940)

* [moco/tf] revisit graph cleanup

This will remove prepare and cleanup transformation in graph load method
- shape inference annotation can be reused after load with this

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* rollback mem leak comments

* undo remove prepare

5 years agoExtract enco-intf from enco (#3936)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 06:21:08 +0000 (15:21 +0900)]
Extract enco-intf from enco (#3936)

This commit extracts enco-intf from enco as the first step
toward enco directory layout revision.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Enable mocotest-tf tests (#3941)
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 06:08:54 +0000 (15:08 +0900)]
[moco/tf] Enable mocotest-tf tests (#3941)

This commit will enable mocotest-tf tests,
AvgPool_000, AvgPool_001, Conv2D_000

Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
5 years ago[moco/tf] Introduce configuration infrastructure (#3935)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 05:56:34 +0000 (14:56 +0900)]
[moco/tf] Introduce configuration infrastructure (#3935)

This commit introduces basic configuration infrastructure which allows
users to control moco's internal behavior through environment variables.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] Conv2D support padding (#3814)
채성우/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 04:57:11 +0000 (13:57 +0900)]
[locomotiv] Conv2D support padding (#3814)

* [locomotiv]Conv2D support padding

This commit adds a test for padding.

Signed-off-by: seongwoo <sw4670.chae@samsung.com>
* This commit add some example for padding

* This commit modify some indentation.

* This commit moidfy indentation.

* This commit is adding comment in test script to help understand.

* This commit add tensorflow code.

* This commit modify comment for test

* This commit apply comments.

5 years ago[moco/tf] introduce graph cleanup (#3932)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 04:37:57 +0000 (13:37 +0900)]
[moco/tf] introduce graph cleanup (#3932)

* [moco/tf] introduce graph release

This will introduce release method for loco::Graph that will cleanup memories that was allocated in load method such as node annotations.

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* use name cleanup

5 years agoAdd check-copyright command (#3927)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 04:25:34 +0000 (13:25 +0900)]
Add check-copyright command (#3927)

This commit adds check-copyright command which checkes whether the
copyrigh notice is present or not.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Introduce BiasAdd tests for moco/tf (#3922)
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 03:28:10 +0000 (12:28 +0900)]
[moco/tf] Introduce BiasAdd tests for moco/tf (#3922)

This commit will introduce BiasAdd_000 and BiasAdd_001 tests for `moco/tf`

Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
5 years ago[angkor] Use GTest_AddTest (#3921)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 03:27:57 +0000 (12:27 +0900)]
[angkor] Use GTest_AddTest (#3921)

Now, angkor's build script uses GTest_AddTest without referring
gtest_main.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco] Remove empty test directory (#3925)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 03:27:46 +0000 (12:27 +0900)]
[moco] Remove empty test directory (#3925)

Now all the tests are in mocotest projects.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] enable AvgPool2D (#3929)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 03:14:06 +0000 (12:14 +0900)]
[locomotiv] enable AvgPool2D (#3929)

This will enable AvgPool2D node in locomotiv

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Introduce NodeShape (#3926)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 01:20:58 +0000 (10:20 +0900)]
[moco/tf] Introduce NodeShape (#3926)

* [moco/tf] Introduce NodeShape

This will introduce NodeShape to access shape inference result(shape information) of each loco::Node

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

* apply another comment

5 years ago[moco/tf] revise test for shape inf feature (#3931)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 24 Jun 2019 00:07:11 +0000 (09:07 +0900)]
[moco/tf] revise test for shape inf feature (#3931)

This will revise feature_shape accessors test in shape inference data to remove implementation detail and focus on interface testing

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[pepper-strcast] Use proper target name (#3917)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Sun, 23 Jun 2019 23:56:30 +0000 (08:56 +0900)]
[pepper-strcast] Use proper target name (#3917)

pepper-strcast currently exposes itself as pepper-string.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoExtract moco-onnx from moco (#3919)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Sun, 23 Jun 2019 23:55:18 +0000 (08:55 +0900)]
Extract moco-onnx from moco (#3919)

This commit extracts moco-onnx from moco in order to make it easy to
manage internal dependencies.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] revise test for shape inf bias (#3930)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Sun, 23 Jun 2019 23:48:20 +0000 (08:48 +0900)]
[moco/tf] revise test for shape inf bias (#3930)

This will revise bias_shape accessors test in shape inference data

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mocotest/tf] add avgpool2d_001 (#3928)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Sun, 23 Jun 2019 23:46:42 +0000 (08:46 +0900)]
[mocotest/tf] add avgpool2d_001 (#3928)

This will add AvgPool_001 test for VALID padding

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] revise test for shape inf filter (#3920)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 09:36:19 +0000 (18:36 +0900)]
[moco/tf] revise test for shape inf filter (#3920)

This will revise filter_shape accessors test in shape inference data

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[ann-ref] Check required targets (#3923)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 08:42:36 +0000 (17:42 +0900)]
[ann-ref] Check required targets (#3923)

Now, ann-ref build gets stuck with error message if required targets are
missing.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] add method for condition check (#3912)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 07:51:46 +0000 (16:51 +0900)]
[locomotiv] add method for condition check (#3912)

There are many validation check if (...) throw ... . This commit adds a function to do this with one call.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[moco/tf] support bias in ShapeInferenceData (#3913)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 07:41:48 +0000 (16:41 +0900)]
[moco/tf] support bias in ShapeInferenceData (#3913)

This will introduce bias attribute accessor in ShapeInferenceData

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-log] Use Builtin Hermes Console Reporter (#3914)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 06:49:30 +0000 (15:49 +0900)]
[moco-log] Use Builtin Hermes Console Reporter (#3914)

This commit replaces locally-implemented reporter with the one in
hermes-std module.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoExtract moco-log from moco (#3897)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 05:43:51 +0000 (14:43 +0900)]
Extract moco-log from moco (#3897)

Let's extract "moco-log" and manage its internal dependencies.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tf2tflite] Use TargetRequire_Return (#3910)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 05:32:02 +0000 (14:32 +0900)]
[tf2tflite] Use TargetRequire_Return (#3910)

This commit replaces ensure_required_targets (which is local to
tf2tflite) with TargetRequire_Return.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] introduce domain in ShapeInferenceData (#3901)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 05:13:24 +0000 (14:13 +0900)]
[moco/tf] introduce domain in ShapeInferenceData (#3901)

* [moco/tf] introduce domain in ShapeInferenceData

This will introduce domain property in ShapeInferenceData

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* add todo comment

5 years agoRequire moco from nnkit (#3909)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 04:57:08 +0000 (13:57 +0900)]
Require moco from nnkit (#3909)

nnkit-moco-tf in nnkit needs moco, and thus this dependency should be
explicit in nnkit.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] BiasEncode (#3888)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 04:40:21 +0000 (13:40 +0900)]
[locomotiv] BiasEncode (#3888)

* [locomotiv] BiasEncode

This commit adds BiasEncode and its test cases for locomotiv.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* checking input rank == 1

5 years ago[moco/tf] Setting shape of Pull from user-provided input data (#3889)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 21 Jun 2019 04:40:05 +0000 (13:40 +0900)]
[moco/tf] Setting shape of Pull from user-provided input data (#3889)

This enables shape of Pull to be filled from user-provided input data.
(Assuming the user-provided input data is already stored in CompilerArgs class)

Note that this was originally writte while Conv2D was written to figure out unknown dim from user-provided shape info.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years agoExtract moco tests from moco (#3907)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 04:22:17 +0000 (13:22 +0900)]
Extract moco tests from moco (#3907)

This commit extracts mocotest projects (mocotest-tf and moctest-onnx)
from moco in order to break dependency cycle between moco and nnkit.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[onnxkit] Update README.md (#3900)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 04:19:23 +0000 (13:19 +0900)]
[onnxkit] Update README.md (#3900)

Now, onnxkit's README.md is compatible with Doxygen.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoAdd TargetRequire module (#3895)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 04:07:26 +0000 (13:07 +0900)]
Add TargetRequire module (#3895)

This commit adds TargetRequire module which includes the following
CMake helpers which simplifies required target check:
- TargetRequire_Check
- TargetRequire_Assert
- TargetRequire_Return

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco.tf] Remove load_model unittest (#3905)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 03:05:22 +0000 (12:05 +0900)]
[moco.tf] Remove load_model unittest (#3905)

This commit removes "load_model" test; Now tf2tflite is responsoble for
tests of this kind.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco.tf] Add Conversion.md (#3894)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 01:55:21 +0000 (10:55 +0900)]
[moco.tf] Add Conversion.md (#3894)

This commit adds Conversion.md which describes how to express each
T/F operation on top of loco.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[pepper-strcast] Initial commit (#3896)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 01:44:53 +0000 (10:44 +0900)]
[pepper-strcast] Initial commit (#3896)

This commit introduces pepper-strcast which will hold various
string-to-value casting helpers.

The initial version supports string-to-int casting.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tfldump] Update README.md (#3899)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 01:33:24 +0000 (10:33 +0900)]
[tfldump] Update README.md (#3899)

Now, tfldump's README.md is compatible with Doxygen.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[hermes-std] Initial commit (#3893)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 00:00:09 +0000 (09:00 +0900)]
[hermes-std] Initial commit (#3893)

This commit introduces hermes-std which includes basic hermes extensions
such as console reporter.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] BiasAdd (#3877)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 20 Jun 2019 23:18:53 +0000 (08:18 +0900)]
[locomotiv] BiasAdd (#3877)

* [locomotiv] BiasAdd

This commit adds BiasAdd and test case for locomotiv.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* checking loco::Domain::Tensor

* msg

* setting the domain of input[1] to loco::Domain::Bias

* fix message

* more check

5 years ago[loco exporter] Naming multiple graph I/O from loco (#3880)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 20 Jun 2019 22:27:31 +0000 (07:27 +0900)]
[loco exporter] Naming multiple graph I/O from loco (#3880)

* [loco exporter] Naming multiple graph I/O from loco

Previously loco exporter only support single graph input and single
graph output. With this commit, it now can support multiple inputs and
outputs with I/O tensor name copied from loco.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
* Review feedback: better comment look

5 years ago[locop] Introduce NodeDesc class (#3891)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Jun 2019 10:20:11 +0000 (19:20 +0900)]
[locop] Introduce NodeDesc class (#3891)

* [locop] Introduce NodeDesc class

This commit introduces NodeDesc class and refactors the internal implementation of
LinearV1 formatter using this class.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update per feedback