채성우/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 4 Jul 2019 10:11:46 +0000 (19:11 +0900)]
[locomotiv] Introduce ReLU6 operation to locomotiv (#4096)
This commit introduce ReLU6 operation to locomotiv.
Signed-off-by: seongwoo <sw4670.chae@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 09:22:37 +0000 (18:22 +0900)]
[mocotest/tf] Copy files only on change (#4094)
moco testframework now copies (and generates) test files only on change.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
남궁석/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 4 Jul 2019 07:45:55 +0000 (16:45 +0900)]
[TFtest] Add TF_SMALL_NET_0003 test (#4093)
This commit adds TF_SMALL_NET_0003 test which sequentially performs
Conv2d - FusedBatchNorm
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 07:31:04 +0000 (16:31 +0900)]
[mocotest/tf] Use shared testcases (#4091)
mocotest-tf now uses shared TensorFlow tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 07:29:25 +0000 (16:29 +0900)]
[tf2tflite] Use shared testcases (#4090)
This commit rewrites tf2tflite test framework to use shared testcases
and removes tf2tflite-local testcases.
tf2tflite test framework now manages whitelist internally.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 4 Jul 2019 04:49:14 +0000 (13:49 +0900)]
[mocotest-tf] test case for custom op (#4078)
* [mocotest-tf] test case for custom op
This is the first testcase for custom op. code for moco/loco extension will be written to pass this test.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* move into new resource dir
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 04:44:29 +0000 (13:44 +0900)]
[moco/tf] Implement ReorderDecode Transform (#4082)
* [moco/tf] Implement ReorderDecode Transform
This commit implements ReorderDecode transform which rewrites Decode ->
Op as Op -> Decode if possible.
The current implementation works only for ReLU.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Hoist loop-invariant code
* Update Graph example
박종현/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>
박종현/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
박세희/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
박종현/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>
박종현/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>
박세희/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
박세희/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>
박세희/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
채성우/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>
박종현/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>
박세희/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>
박세희/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>
윤현식/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
박종현/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>
채성우/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.
박종현/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
박세희/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
박종현/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>
박종현/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>
박종현/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>
윤현식/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
박세희/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>
박세희/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>
박세희/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
박세희/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>
박세희/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
이성재/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>
박종현/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>
박세희/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>
박세희/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>
박종현/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>
박세희/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>
박세희/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>
박종현/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>
박종현/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>
박세희/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>
박세희/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
박종현/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>
박세희/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>
박종현/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>
박세희/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
박세희/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>
박종현/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>
박세희/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
박세희/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
박세희/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>
박세희/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>
박세희/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>
박종현/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
이성재/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>
박종현/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>
채성우/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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 *
박종현/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>
박세희/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
박종현/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>
박세희/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>
윤현식/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박세희/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>
박세희/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
박세희/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>
박종현/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>
박종현/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
박종현/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>
박종현/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
박종현/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>
박세희/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>
박종현/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>
박종현/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>
박종현/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>
박종현/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>
박세희/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>
박종현/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>
박세희/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
윤현식/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>
박종현/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>
박종현/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>
이성재/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>
박종현/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>
윤현식/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