platform/core/ml/nnfw.git
5 years ago[angkor] Add TensorIndex & TensorShape alias (#4085)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 04:43:33 +0000 (13:43 +0900)]
[angkor] Add TensorIndex & TensorShape alias (#4085)

This commit introduces an alias of tensor::Index and tensor::Shape under
nncc::core::ADT namespace (to shorten client-side code).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[tf2tflite] Detect crashes during test (#4089)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 04:42:15 +0000 (13:42 +0900)]
[tf2tflite] Detect crashes during test (#4089)

* [tf2tflite] Detect crashes during test

The current test frameworks becomes green as long as i5diff succeeds,
and thus it cannot detect any crash in tf2tflite / nnkit-run.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Remove trap code

5 years ago[moco/tf] Introduce TFConv2D IR (#4068)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 4 Jul 2019 03:59:10 +0000 (12:59 +0900)]
[moco/tf] Introduce TFConv2D IR (#4068)

* [moco/tf] Introduce TFConv2D IR

This will introduce TFConv2D TensorFlow dialect for Conv2D and related changes

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

* as type

5 years agoIntroduce ListFile CMake module (#4081)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 01:47:42 +0000 (10:47 +0900)]
Introduce ListFile CMake module (#4081)

This commit introduces ListFile CMake module which provides
ListFile_Read helper.

This helper makes it easy to create a list from text files.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoIntroduce TensorFlowTests resource (#4080)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 01:36:56 +0000 (10:36 +0900)]
Introduce TensorFlowTests resource (#4080)

This commit introduces TensorFlowTests resource which includes all the
tests in moco-tf and tf2tflite.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Branch Conv2D graph builder for TFDialect (#4079)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 4 Jul 2019 01:29:52 +0000 (10:29 +0900)]
[moco/tf] Branch Conv2D graph builder for TFDialect (#4079)

* [moco/tf] Branch Conv2D graph builder for TFDialect

This will prepare Conv2D graph builder with a knob to generate TFConvD node

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

5 years ago[moco_tf] tensor_shape setter in ShapeInferenceData (#4084)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 4 Jul 2019 00:15:40 +0000 (09:15 +0900)]
[moco_tf] tensor_shape setter in ShapeInferenceData (#4084)

This will add tensor_shape setter in ShapeInferenceData

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Add more methods in Convert (#4070)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 23:52:39 +0000 (08:52 +0900)]
[moco/tf] Add more methods in Convert (#4070)

* [moco/tf] Add more methods in Convert

This will add more methods in Convert for import

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

5 years ago[loco] ReLU6 node (#4077)
채성우/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 3 Jul 2019 09:12:48 +0000 (18:12 +0900)]
[loco] ReLU6 node (#4077)

This commit introduce ReLU6 node to loco.

Signed-off-by: seongwoo <sw4670.chae@samsung.com>
5 years ago[mocotest/tf] Use TEST_REPO & TEST_SPACE variables (#4074)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 08:16:20 +0000 (17:16 +0900)]
[mocotest/tf] Use TEST_REPO & TEST_SPACE variables (#4074)

This commit updates mocotest-tf's CMakeLists.txt to use TEST_REPO &
TEST_SPACE variables instead of CMAKE_CURRENT_SOURCE_DIR &
CMAKE_CURRENT_BINARY_DIR.

This change gives some flexibility on test directory layout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Run TFOptimizier and Canonicalizer (#4073)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 07:56:33 +0000 (16:56 +0900)]
[moco/tf] Run TFOptimizier and Canonicalizer (#4073)

This will make frontend to run TFOptimizier and Canonicalizer

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Knob for ResolveFusedBatchNorm (#4075)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 07:56:03 +0000 (16:56 +0900)]
[moco/tf] Knob for ResolveFusedBatchNorm (#4075)

This will add a knob for ResolveFusedBatchNorm transform

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[plier/tf] copy_shape() function (#4066)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 07:29:42 +0000 (16:29 +0900)]
[plier/tf] copy_shape() function (#4066)

* [plier/tf] copy_shape() function

This adds copy_shape() function that copies tensorflow shape proto to angkor shape.

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

5 years ago[tf2tflite] Use exo-tflite instead of loco-exporter (#4071)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 07:28:43 +0000 (16:28 +0900)]
[tf2tflite] Use exo-tflite instead of loco-exporter (#4071)

This commit revises tf2tflite to use exo-tflite instead of
loco-exporter. This change resolves conflicts when loco-exporter
evolves into a in-house package exporter.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locomotiv] Add Reshape operation (#4033)
채성우/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 3 Jul 2019 06:31:45 +0000 (15:31 +0900)]
[locomotiv] Add Reshape operation (#4033)

* [locomotiv] Add Reshape operation

This commit introduce Reshape operation to locomotiv.

Signed-off-by: seongwoo <sw4670.chae@samsung.com>
* This commit modify code according to comments.

5 years agoIntroduce exo-tflite (#4050)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 06:31:31 +0000 (15:31 +0900)]
Introduce exo-tflite (#4050)

* Introduce exo-tflite

This commit introduces exo-tflite project. All the code itself originates
from loco-exporter, but have small style changes.

This "exo-tflite", unlike loco-exporter, will not evolve into an exporter for
in-house package.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix ifdef guard

5 years ago[moco/tf] Introduce Canonicalizer (#4045)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 05:42:43 +0000 (14:42 +0900)]
[moco/tf] Introduce Canonicalizer (#4045)

* [moco/tf] Introduce Canonicalizer

This will introduce Canonicalizer for transforming TFNodes to CanonicalNodes

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

5 years ago[tf2tflite] Rename testcases (#4064)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 05:00:55 +0000 (14:00 +0900)]
[tf2tflite] Rename testcases (#4064)

This commit renames the tests that have a name conflict with moco-tf.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Support FeatureCodec clone (#4062)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 05:00:41 +0000 (14:00 +0900)]
[loco] Support FeatureCodec clone (#4062)

This commit introduce "clone" API to FeatureEncoder/Decoder interface.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoIntroduce NNCC_EXTERNALS_DIR configuration (#4065)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 04:20:02 +0000 (13:20 +0900)]
Introduce NNCC_EXTERNALS_DIR configuration (#4065)

This commit allows users to download external dependencies
into their own location via setting NNCC_EXTERNALS_DIR.

Note that the default behavior is same as before.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[plier/tf] Introducing plier/tf (#4056)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 03:16:35 +0000 (12:16 +0900)]
[plier/tf] Introducing plier/tf (#4056)

* [plier/tf] Introducing plier/tf

This commit introduce `plier/tf`, which is a set of small tools to handle Tensorflow model. These are currently copied from `moco/../Convert.h and cpp` and `moco/../TestHelper.h and cpp`.

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

* remove loco

5 years ago[moco/tf] Introduce TFMul IR (#4061)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 01:40:15 +0000 (10:40 +0900)]
[moco/tf] Introduce TFMul IR (#4061)

This will add TFMul IR and related codes to support TensorFlow Mul node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Add transforms for TFAdd (#4060)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 00:22:56 +0000 (09:22 +0900)]
[moco/tf] Add transforms for TFAdd (#4060)

This will add missing TFAdd related transforms

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Import FusedBatchNorm (#4053)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 23:59:59 +0000 (08:59 +0900)]
[moco/tf] Import FusedBatchNorm (#4053)

* [moco/tf] Import FusedBatchNorm

This will add import of FusedBatchNorm to TFFusedBatchNorm IR

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* add required transformation handlers

5 years ago[moco/tf] Test for TFFusdBatchNorm (#4052)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 23:59:02 +0000 (08:59 +0900)]
[moco/tf] Test for TFFusdBatchNorm (#4052)

This will add ctor unit test of TFFusedBatchNorm

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Introduce TFAdd IR (#4051)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 22:26:17 +0000 (07:26 +0900)]
[moco/tf] Introduce TFAdd IR (#4051)

* [moco/tf] Introduce TFAdd IR

This will introduce TensorFlow dialect Add IR
- this will be used as intermediate node while resolving FusedBatchNorm node

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

* another comment

* privode GraphDef example

5 years agoUpdate README.modified (#4048)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 09:21:47 +0000 (18:21 +0900)]
Update README.modified (#4048)

- Add `Mainterners` and `Committers` list to following the rule of Samsung
Inner Source Program.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years ago[tf2tflite] Add TF_SMALL_NET_0001 test (#4047)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 08:03:04 +0000 (17:03 +0900)]
[tf2tflite] Add TF_SMALL_NET_0001 test (#4047)

This commit adds TF_SMALL_NET_0001 test which sequentially performs
Conv2D-BiasAdd-Conv2D operations.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Introduce TFOptimizier (#4049)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 07:45:38 +0000 (16:45 +0900)]
[moco/tf] Introduce TFOptimizier (#4049)

This will introduce TFOptimizier to provide transformations with TensorFlow Dialects

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Add ImportAsTFConv2D knob (#4044)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 07:43:35 +0000 (16:43 +0900)]
[moco/tf] Add ImportAsTFConv2D knob (#4044)

This will add ImportAsTFConv2D in knob to switch Conv2D import as Canonical or TensorFlow Conv2D

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years agoAdd TensorFlow 1.14 source package (#4043)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 05:03:06 +0000 (14:03 +0900)]
Add TensorFlow 1.14 source package (#4043)

This commit introduces TensorFlow v1.1.4 source package which allows
each sub-project to access T/F 1.14 source during build.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[mocotest/tf] FusedBatchNorm_001 (#4042)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 04:30:17 +0000 (13:30 +0900)]
[mocotest/tf] FusedBatchNorm_001 (#4042)

This will add FusedBatchNorm_001 test material having values for calculation validation

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mocotest/tf] FusedBatchNorm_000 (#4041)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 04:29:48 +0000 (13:29 +0900)]
[mocotest/tf] FusedBatchNorm_000 (#4041)

This will add FusedBatchNorm_000 test material for minimul testing for FusedBatchNorm node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Introduce Domain Conversion Simplification (#4037)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 04:05:52 +0000 (13:05 +0900)]
[moco/tf] Introduce Domain Conversion Simplification (#4037)

This commit introduces Domain Conversion Simplification optimizations
which convertes FeatureDecode followed by FeatureEncode as Forward.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Move Transform.h to the top-level (#4038)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 03:12:59 +0000 (12:12 +0900)]
[moco/tf] Move Transform.h to the top-level (#4038)

This change makes it easy to distinguish Transform declaration (Transform.h) and
enumerate its implementations (all the files under Transforms/).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Introduce TFFusedBatchNorm IR (#4039)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 03:05:56 +0000 (12:05 +0900)]
[moco/tf] Introduce TFFusedBatchNorm IR (#4039)

This will introduce TFFusedBatchNorm to import TensorFlow FusedBatchNorm node

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco/tf] Add TFNode visitor (#4036)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 00:51:15 +0000 (09:51 +0900)]
[moco/tf] Add TFNode visitor (#4036)

* [moco/tf] Add TFNode visitor

This will add visitor related methods in TFNode

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

5 years ago[moco/tf] Implement Dead Node Elimination (#4032)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 10:50:32 +0000 (19:50 +0900)]
[moco/tf] Implement Dead Node Elimination (#4032)

Now, moco.tf compilation pipiline support Dead Node Elimination. Note that
this optimization is off by default.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Introduce TFNode for TensorFlow dialect (#4029)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 09:31:33 +0000 (18:31 +0900)]
[moco/tf] Introduce TFNode for TensorFlow dialect (#4029)

This will introduce TFNode and TFNodeImpl for Tensorflow dialect

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[loco] Introduce active_nodes helper (#4014)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 09:03:40 +0000 (18:03 +0900)]
[loco] Introduce active_nodes helper (#4014)

This commit introduces active_nodes helpers which returns all the
predecessor of a given set of nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco/tf] Rename macro as CANONICAL_NODE (#4025)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 07:45:06 +0000 (16:45 +0900)]
[moco/tf] Rename macro as CANONICAL_NODE (#4025)

* [moco/tf] Rename macro as CANONICAL_NODE

This will rename existing MOCONODE to CANONICAL_NODE as they are actually treating loco canonical nodes

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

5 years ago[moco/tf] Introduce TFOpcode (#4028)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 1 Jul 2019 07:12:05 +0000 (16:12 +0900)]
[moco/tf] Introduce TFOpcode (#4028)

This will introduce TFOpcode for TensorFlow dialect

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
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