platform/core/ml/nnfw.git
5 years agoImplement backend manipulation API (#7335)
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 09:36:59 +0000 (18:36 +0900)]
Implement backend manipulation API (#7335)

* Implement backend manipulation API

- Implement backend manipulation API

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
* Apply suggestion

* fix format

5 years ago[nnpkg] update custom operator specification (#7337)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 09:17:40 +0000 (18:17 +0900)]
[nnpkg] update custom operator specification (#7337)

* [nnpkg] update custom operator specification

It updates custom operator specification.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
* Update custom operator specificaiton

- Remove `nncc`
- Change the sentence as requested by review

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
5 years ago[neurun] Eliminate redundant fn in acl KernegGen (#7302)
Дилшоджон Пошшоев/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Sep 2019 08:54:48 +0000 (11:54 +0300)]
[neurun] Eliminate redundant fn in acl KernegGen (#7302)

No need to do extra move for most of the functions

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
5 years ago[cop] Set isNnAPi=true for CustomNode (#7341)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 08:49:07 +0000 (17:49 +0900)]
[cop] Set isNnAPi=true for CustomNode (#7341)

It sets isNnAPI for CustomNode to enable backend selection.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
5 years ago[locomotiv] Decouple NodeDataImpl and NodeAnnotation (#7332)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 08:30:32 +0000 (17:30 +0900)]
[locomotiv] Decouple NodeDataImpl and NodeAnnotation (#7332)

NodeDataImpl now inherits NodeData interface, which allows users to
annotate any NodeData implementation other than NodeDataImpl.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[exo-tflite] Adding TFLAveragePool2D into OperationExporter (#7315)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 07:00:41 +0000 (16:00 +0900)]
[exo-tflite] Adding TFLAveragePool2D into OperationExporter (#7315)

TFLAveragePool2D was added into OperationExporter.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years agoAPI to manipulate backend setting (#7298)
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 04:56:15 +0000 (13:56 +0900)]
API to manipulate backend setting (#7298)

Two functions(nnfw_set_default_backend, nnfw_set_op_backend) are
added.

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
5 years agoFix error during building custom op app for pacl (#7329)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 04:18:11 +0000 (13:18 +0900)]
Fix error during building custom op app for pacl (#7329)

Only nuerun supports custom op.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
5 years ago[custom op] Add example application (#7313)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Sep 2019 02:10:45 +0000 (05:10 +0300)]
[custom op] Add example application (#7313)

* [custom op] Add example application

Add example application using FillFrom kernel and FillFrom nnpackage

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
* fix wrong kernel name

5 years ago[custom op] Add example nnpackage (#7312)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Sep 2019 02:10:01 +0000 (05:10 +0300)]
[custom op] Add example nnpackage (#7312)

Adds example model using FillFrom custom operation

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[moco-tf] Use shape_inference_done for fix_shape COpCall (#7325)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 01:47:25 +0000 (10:47 +0900)]
[moco-tf] Use shape_inference_done for fix_shape COpCall (#7325)

This will update fix_shape for COpCall to use shape_inference_done helper function

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[exo-tflite] Rename ConvertAdd (#7323)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Sep 2019 01:46:16 +0000 (10:46 +0900)]
[exo-tflite] Rename ConvertAdd (#7323)

This will rename ConvertAdd to loco IR name ConvertEltwiseAdd

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[locomotiv] Support TensorBroadcast (#7309)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 01:34:41 +0000 (10:34 +0900)]
[locomotiv] Support TensorBroadcast (#7309)

* [locomotiv] Support TensorBroadcast

This commit extends locomotiv to support TensorBroadcast nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix a copy-and-paste error

* Check input shape

5 years ago[loco] TransposedConv2D canonical IR (#7269)
박천교/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 10 Sep 2019 01:32:40 +0000 (10:32 +0900)]
[loco] TransposedConv2D canonical IR (#7269)

* [loco] TransposedConv2D canonical IR

This commit introduces TransposedConv2D, loco canonical IR for
spatial transposed convolution.

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

* Edit comment

5 years ago[loco] Refactor eltwise_binary_node_shape (#7296)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 00:03:58 +0000 (09:03 +0900)]
[loco] Refactor eltwise_binary_node_shape (#7296)

This commit relocates eltwise_binary_node_shape helper in order to
reduce the amount of code changes required for API v2 migration.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Do not invoke global shape_known helper (#7297)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 00:03:46 +0000 (09:03 +0900)]
[loco] Do not invoke global shape_known helper (#7297)

This commit revises ForwardShapeInferenceAlgorithm to invoke internal
"shape_known" helper instead of global shape_known helper.

This change reduces the amount of code changes for API v2 migration.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[bino] Remove bitwise-or operator overloading (#7300)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Sep 2019 00:03:28 +0000 (09:03 +0900)]
[bino] Remove bitwise-or operator overloading (#7300)

Recently introduced fipe provides more general function pipe
implementation.

Let's use the function pipe implementation in fipe!

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Implement Type/Shape Inference for TensorBroadcast (#7306)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 23:57:28 +0000 (08:57 +0900)]
[loco] Implement Type/Shape Inference for TensorBroadcast (#7306)

This commit implements type/shape inference for TensorBroadcast nodes.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[exo-tflite] Moving Knob check of each converter into convert.cpp (#7303)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:39:18 +0000 (08:39 +0900)]
[exo-tflite] Moving Knob check of each converter into convert.cpp (#7303)

* [exo-tflite] Moving Knob check of each converter into convert.cpp

Knob check of each converter was moved into `convert.cpp`.

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

5 years ago[moco-tf] Delete moved to logo (#7311)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:38:56 +0000 (08:38 +0900)]
[moco-tf] Delete moved to logo (#7311)

This will delete transforms that has been moved to logo

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[exo-tflite] Putting all converts header file into one header file (#7305)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:38:45 +0000 (08:38 +0900)]
[exo-tflite] Putting all converts header file into one header file (#7305)

* [exo-tflite] Putting all converts header file into one header file

Now Conversion.h will include all converter's header file. This is to keep `convert.cpp` clean.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* move conversion/conversions.h to src

5 years ago[exo-tflite] adding `const` to TFLNodes.h (#7307)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:38:31 +0000 (08:38 +0900)]
[exo-tflite] adding `const` to TFLNodes.h (#7307)

This adds missing `const` to TFLNodes.h

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] type inference of TFLAveragePool2D (#7314)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:34:45 +0000 (08:34 +0900)]
[exo-tflite] type inference of TFLAveragePool2D (#7314)

This commit adds type inference of TFLAveragePool2D.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] change knob name for loco::AvgPool2D (#7316)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 23:34:29 +0000 (08:34 +0900)]
[exo-tflite] change knob name for loco::AvgPool2D (#7316)

Previous name `ConvertAveragePool2D` followed TFL node name.
So, renamed to ConvertAvgPool2D just like converter's name follows canonical name.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[custom op] Add FillFrom kernel example (#7310)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Sep 2019 11:26:23 +0000 (14:26 +0300)]
[custom op] Add FillFrom kernel example (#7310)

Add example for kernel developers

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[custom op] Add basic custom op example structure (#7308)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Sep 2019 10:34:18 +0000 (13:34 +0300)]
[custom op] Add basic custom op example structure (#7308)

* [custom op] Add basic custom op example structure

Add directories and CMakeLists for apps and kernels

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
* use add_subdirectories

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[cli] Use GTest_AddTest (#7286)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 10:18:11 +0000 (19:18 +0900)]
[cli] Use GTest_AddTest (#7286)

Let's simplify CMakeLists.txt a bit with GTest_AddTest helper.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco-tf] Apply shape_inference_done (#7304)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 10:14:25 +0000 (19:14 +0900)]
[moco-tf] Apply shape_inference_done (#7304)

This will apply to use shape_inference_done() for fix_shape nodes

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[logo] Unit test for ConstantFoldingPass (#7301)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 10:00:51 +0000 (19:00 +0900)]
[logo] Unit test for ConstantFoldingPass (#7301)

* [logo] Unit test for ConstantFoldingPass

This will add unit test for ConstantFoldingPass copied from moco-tf ConstantFoldingTransform excluing import and log

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

5 years ago[backend/srcn] Add transpose conv kernel (#7248)
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 09:53:30 +0000 (18:53 +0900)]
[backend/srcn] Add transpose conv kernel (#7248)

* [backend/srcn] Add transpose conv kernel

Srcn library supports raw-major(NCHW) and col-major(NHWC) image layout.
However this commit only supports col-major image layout.

And Srcn library takes HWOI kernel filter layout when the image layout is NHWC.
But in neurun, it takes OHWI kernel filter layout when using the same image layout.
So it need to permute codes for TransposeConv weight.

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Change the Permute function to be limited to kernel layout

* Use original data array without copying to new address

5 years ago[locomotiv] Use const if possible (#7264)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 09:37:11 +0000 (18:37 +0900)]
[locomotiv] Use const if possible (#7264)

"annot_data" and "annot_domain" do not change the node itself.

This commit revies the signature of these helpers to express this
property explicitly.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco-tf] Use shape_inference_done for helpers (#7288)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 07:55:29 +0000 (16:55 +0900)]
[moco-tf] Use shape_inference_done for helpers (#7288)

This will change to use shape_inference_done() for helpers in FixShapeTransform

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[logo] Test helper (#7289)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 07:40:54 +0000 (16:40 +0900)]
[logo] Test helper (#7289)

* [logo] Test helper

This will introduce TestHelper for logo with find_first_node_bytype() method

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

5 years ago[loco] Add LEP_000 document (#7128)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 07:10:35 +0000 (16:10 +0900)]
[loco] Add LEP_000 document (#7128)

* [loco] Add LEP_000 document

This commit adds LEP_000 document which proposes a design change over
loco IR.

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

* Rename and add heading

* Add a comment

5 years ago[loco] Implement TensorBoradcast::Mapping methods (#7279)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 07:08:55 +0000 (16:08 +0900)]
[loco] Implement TensorBoradcast::Mapping methods (#7279)

This commit adds missing TensorBroadcast::Mapping method implementations
with related tests.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoIntroduce fipe library (#7281)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 07:08:07 +0000 (16:08 +0900)]
Introduce fipe library (#7281)

* Introduce fipe library

This commit introduces fipe, which permits function chaining with
UNIX pipe-like syntax.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Add License Notice

* Add a comment

5 years ago[logo] Use GTest_AddTest helper (#7285)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 07:07:08 +0000 (16:07 +0900)]
[logo] Use GTest_AddTest helper (#7285)

This commit simplifies logo's CMakeLists.txt using GTest_AddTest.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[exo-tflite] Move Convert.h/cpp, GraphBlock.h/cpp to src (#7291)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 07:02:30 +0000 (16:02 +0900)]
[exo-tflite] Move Convert.h/cpp, GraphBlock.h/cpp to src (#7291)

Convert.h/cpp, GraphBlock.h/cpp are moved into src.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[neurun] Apply TensorManager instead of MemoryManager (#7251)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 9 Sep 2019 06:07:33 +0000 (15:07 +0900)]
[neurun] Apply TensorManager instead of MemoryManager (#7251)

* [neurun] Apply TensorManager instead of MemoryManager

Apply TensorManager instead of MemoryManager. It looks huge but there
are the only many changes instead TensorManager of MemoryManager

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* Fix format

* Adding finalize() and moving wrap_tensor() in dataflow

* Fix wrong code in dataflow

5 years ago[exo-tflite] Adding test assert into TFLTypeInferenceRuleTest (#7284)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 04:32:36 +0000 (13:32 +0900)]
[exo-tflite] Adding test assert into TFLTypeInferenceRuleTest (#7284)

This adds more asserts into the test body of TFLTypeInferenceRuleTest.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Adding test assert into TFLShapeInferenceRuleTest (#7283)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 04:20:04 +0000 (13:20 +0900)]
[exo-tflite] Adding test assert into TFLShapeInferenceRuleTest (#7283)

This adds more asserts into the test body of TFLShapeInferenceRuleTest.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Attaching progress reporter into convert_to_TFLNodes() (#7280)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 03:42:48 +0000 (12:42 +0900)]
[exo-tflite] Attaching progress reporter into convert_to_TFLNodes() (#7280)

This attaches progress reporter into the phase of convert_to_TFLNodes().

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Helper macro and class for test (#7255)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 03:38:09 +0000 (12:38 +0900)]
[exo-tflite] Helper macro and class for test (#7255)

* [exo-tflite] Helper macro and class for test

Adding a macro to count the number of node and a class to easily run a pass to test.

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

5 years ago[tflite_loader] Implemented TransposeConv node conversion (#7268)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Sep 2019 03:04:41 +0000 (06:04 +0300)]
[tflite_loader] Implemented TransposeConv node conversion (#7268)

* [tflite_loader] Implemented TransposeConv node conversion

Implemented transpose conv node conversion

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
* Fixed formatting

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
5 years ago[custom op] Fix custom kernel configuration (#7238)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Sep 2019 01:48:42 +0000 (04:48 +0300)]
[custom op] Fix custom kernel configuration (#7238)

Previously tensor address was accidently passed instead of tensor buffer
Correctly store userdata_size insude CustomKernel::configure

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[tflite_loader] Implemented Mean node conversion (#7267)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Sep 2019 01:45:41 +0000 (04:45 +0300)]
[tflite_loader] Implemented Mean node conversion (#7267)

* [tflite_loader] Implemented Mean node conversion

* implemented Mean node conversion
* changed MeanNode keep_dims param type to bool

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
* Fixed formatting

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
5 years ago[loco] Introduce ShapeInferenceRule v2 API (#7265)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 01:43:53 +0000 (10:43 +0900)]
[loco] Introduce ShapeInferenceRule v2 API (#7265)

This commit extends ShapeInferenceRule with a new version of infer API.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[loco] Introduce TensorBroadcast node (#7262)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Sep 2019 01:38:17 +0000 (10:38 +0900)]
[loco] Introduce TensorBroadcast node (#7262)

This commit extends loco.canonical with TensorBroadcast node.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[moco-tf] Introduce shape_inference_done (#7276)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Mon, 9 Sep 2019 01:34:46 +0000 (10:34 +0900)]
[moco-tf] Introduce shape_inference_done (#7276)

This will introduce shape_inference_done() method in FixShapeTransform as a helper function not to directly access ShapeInferenceData annotation to check shape inference is done or not

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mir] Refactor graph dot dumper (#7273)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Sep 2019 21:11:14 +0000 (00:11 +0300)]
[mir] Refactor graph dot dumper (#7273)

Refactor graph dot dumper to loosen dependencies.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[nnc] Use dumpGraph function (#7243)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Sep 2019 18:28:41 +0000 (21:28 +0300)]
[nnc] Use dumpGraph function (#7243)

Use `dumpGraph` function instead of `IrDotDumper` class.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[moco-tf] Remove unused code in FixShapeTransform (#7266)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 10:25:35 +0000 (19:25 +0900)]
[moco-tf] Remove unused code in FixShapeTransform (#7266)

This will remove unused code in FixShapeTransform
- Shape inference for canonical dialect nodes are handled by loco service

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[exo-tflite] Put "exo::" prefix (to easily distinguish log from exo) (#7258)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 10:25:20 +0000 (19:25 +0900)]
[exo-tflite] Put "exo::" prefix (to easily distinguish log from exo) (#7258)

It is difficult to tell which (moco? exo-tflite?) prints log. So, "exo::" prefix is added for exo-tflite.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years agoCheck OOR exception intflite_benchmark (#7260)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 10:15:57 +0000 (19:15 +0900)]
Check OOR exception intflite_benchmark (#7260)

Add try-catch to catch OOR exception by substr

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[exo-tflite] Adding ReluConverter into convert_to_TFLNodes() (#7257)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 09:00:47 +0000 (18:00 +0900)]
[exo-tflite] Adding ReluConverter into convert_to_TFLNodes() (#7257)

* [exo-tflite] Adding ReluConverter into convert_to_TFLNodes()

This adds ReluConverter and type/shape inference into convert_to_TFLNodes().

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

5 years ago[res] TF test for Add broadcast with const scala (#7250)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 08:58:09 +0000 (17:58 +0900)]
[res] TF test for Add broadcast with const scala (#7250)

This will add TF test material of Add operator with rank 4 tensor with const scala

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-tf] Skip canonical node fix shape (#7244)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 08:57:46 +0000 (17:57 +0900)]
[moco-tf] Skip canonical node fix shape (#7244)

This will skip canonical nodes fix shapes that is done as loco service
- Pull and Push nodes are still called as they exist in import

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-tf] Fix SquaredDifferenceCanonicalizer (#7245)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 08:57:22 +0000 (17:57 +0900)]
[moco-tf] Fix SquaredDifferenceCanonicalizer (#7245)

This will fix SquaredDifferenceCanonicalizer to check input nodes shape

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-tf] Remove unused ForwardShapeInferenceAlgorithm (#7246)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 08:57:00 +0000 (17:57 +0900)]
[moco-tf] Remove unused ForwardShapeInferenceAlgorithm (#7246)

This will remove not used anymore ForwardShapeInferenceAlgorithm

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[res] Conv2DBackpropInput with 3x3 stride 2 (#7194)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 08:55:56 +0000 (17:55 +0900)]
[res] Conv2DBackpropInput with 3x3 stride 2 (#7194)

This will add TensorFlow test material for Conv2DBackpropInput with 3x3 filter and stride 2

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years agoIntroduce bino (#7247)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 08:29:06 +0000 (17:29 +0900)]
Introduce bino (#7247)

This commit introduces bino, a library that facilitates std::pair
manipulation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[exo-tflite] change TODO (TFL node list to canonical node list) (#7256)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 07:46:11 +0000 (16:46 +0900)]
[exo-tflite] change TODO (TFL node list to canonical node list) (#7256)

Changing TODO list from (wrong) TFL node list to canonical node list.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[res] TF Test for Instance normalization (#7198)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 6 Sep 2019 07:33:46 +0000 (16:33 +0900)]
[res] TF Test for Instance normalization (#7198)

This will add TF network test material of small input size of Instance normalization

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[loco] Do NOT invoke shape_get directly (#7231)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 07:27:46 +0000 (16:27 +0900)]
[loco] Do NOT invoke shape_get directly (#7231)

This commit replaces all the loco::shape_get calls in ForwardShapeInferenceAlgorithm
implemention with "node_shape" method to facilitate refactoring.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[locop] Introduce ExampleGraph (#7229)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 06:45:21 +0000 (15:45 +0900)]
[locop] Introduce ExampleGraph (#7229)

Let's reuse common test code.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years agoRemove CLPermuteEx layer and kernel (#7253)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 05:53:44 +0000 (14:53 +0900)]
Remove CLPermuteEx layer and kernel (#7253)

CLPermuteEx is not used anymore in neurun
-  Remove this implementation
-  Fix pacl to use CLPermute (used in neurun acl-cl backend)

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Implemented test for scheduler profiling mode (#7034)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Sep 2019 05:53:07 +0000 (08:53 +0300)]
[neurun] Implemented test for scheduler profiling mode (#7034)

Implemented test for scheduler with enabled profiling mode
Fixed scheduling order by increasing et of one branch

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
5 years agoRemove GenericFullyConnectedLayer implementation (#7252)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 05:38:23 +0000 (14:38 +0900)]
Remove GenericFullyConnectedLayer implementation (#7252)

GenericFullyConnectedLayer is not used anymore in neurun
- Remove this implementation
- Fix pacl to use CLFullyconnectedReshpingLayer (used in neurun acl-cl backend)

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoAdd nnpkg test in coverage test (#7249)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 04:26:13 +0000 (13:26 +0900)]
Add nnpkg test in coverage test (#7249)

Run nnpkg test for coverage test if nnpkg test suite exists

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoUse option for srcn kernel build (#7222)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Sep 2019 03:40:17 +0000 (12:40 +0900)]
Use option for srcn kernel build (#7222)

Change to use srcn kernel build option BUILD_SRCN_KERNEL

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[moco-tf] Remove canonical concat axis test (#7230)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 23:03:38 +0000 (08:03 +0900)]
[moco-tf] Remove canonical concat axis test (#7230)

This will remove Canonical Concat IR test for axis
- Canonical IRs will not be handled in shape inference anymore
- Current Concat axis calculation is done in shape inference step

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[mir] Add dumpGraph function (#7242)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 19:29:16 +0000 (22:29 +0300)]
[mir] Add dumpGraph function (#7242)

Add `dumpGraph` function as a future replacement of `IrDotDumper`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[mir] Revive IVisitor in proper way (#6657)
Alexander Efimov/AI Tools Lab/./Samsung Electronics [Thu, 5 Sep 2019 17:26:41 +0000 (20:26 +0300)]
[mir] Revive IVisitor in proper way (#6657)

Return IVisitor as a strict version of Visitor
Propose to not use IVisitor outside of MIR component
Add missing includes and licenses

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[nnc] Add missing include (#7241)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 17:10:47 +0000 (20:10 +0300)]
[nnc] Add missing include (#7241)

Add missing include of `Visitor.h`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[mir2loco] Add missing include (#7240)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 17:10:19 +0000 (20:10 +0300)]
[mir2loco] Add missing include (#7240)

Add missing include of `Visitor.h`.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[mir] Make Shape constructor explicit (#7239)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 16:18:05 +0000 (19:18 +0300)]
[mir] Make Shape constructor explicit (#7239)

Make `Shape` constructor explicit again.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years ago[nnc] Remove conversions of strides vector to Shape (#7237)
Сергей Баранников/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 13:58:48 +0000 (16:58 +0300)]
[nnc] Remove conversions of strides vector to Shape (#7237)

Remove implicit conversions of strides to `Shape`.
Add helper functions to work with strides.

Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
5 years agoEnable some tests for acl neon (#7235)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 5 Sep 2019 12:33:07 +0000 (21:33 +0900)]
Enable some tests for acl neon (#7235)

This commit eanbles some tests for acl neon.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years ago[custom op] (fix) Implement missing ShapeFixer method in cpu backend (#7236)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 12:13:19 +0000 (15:13 +0300)]
[custom op] (fix) Implement missing ShapeFixer method in cpu backend (#7236)

Provide empty imlpementation for ShapeFixer::visit(CustomNode&)

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years agoUpdate `tflite_convert.sh` script (#6869)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 11:24:29 +0000 (04:24 -0700)]
Update `tflite_convert.sh` script (#6869)

- Change to use the 'tensorflow' module installed on the system by
  default.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoEnable Split op for ACL neon (#7226)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 5 Sep 2019 11:16:37 +0000 (20:16 +0900)]
Enable Split op for ACL neon (#7226)

This commit enables to support Split op for ACL neon.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoUse type convert helper in tflite loader (#7232)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 5 Sep 2019 11:16:03 +0000 (20:16 +0900)]
Use type convert helper in tflite loader (#7232)

Use activation type convert helper for sub operation

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoEnable binary Logical ops for ACL neon (#7233)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 5 Sep 2019 11:15:52 +0000 (20:15 +0900)]
Enable binary Logical ops for ACL neon (#7233)

This commit enables to support binary Logical ops for ACL neon.
  - Implement kernel of acl_neon for binary logical ops
  - Enable to support these ops for acl_neon on the neurun

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years ago[custom op] Implement custom operation loading in tflite_loader (#7182)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 10:14:25 +0000 (13:14 +0300)]
[custom op] Implement custom operation loading in tflite_loader (#7182)

Load custom operations during model input
Loader assumes custom operations were already registered before model loading
Pass userdata size to CustomNode constructor
update custom op creation

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[mocotest-tf] Enable UNIT_StopGradient_001 (#7224)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:36:53 +0000 (18:36 +0900)]
[mocotest-tf] Enable UNIT_StopGradient_001 (#7224)

This will enable UNIT_StopGradient_001 that is rank 4 test of StopGradient

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[tf2tflite] Enable UNIT_StopGradient_001 (#7223)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:36:33 +0000 (18:36 +0900)]
[tf2tflite] Enable UNIT_StopGradient_001 (#7223)

This will enable UNIT_StopGradient_001 that is rank 4 test of StopGradient

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[exo-tflite] introducing TypeInferencePass (#7225)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:35:41 +0000 (18:35 +0900)]
[exo-tflite] introducing TypeInferencePass (#7225)

TypeInferencePass annotates dtype of nodes (canonical/TFL/COp nodes).

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Introducing ProgressReporter listner (#7221)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:34:19 +0000 (18:34 +0900)]
[exo-tflite] Introducing ProgressReporter listner (#7221)

* [exo-tflite] Introducing ProgressReporter listner

ProgressReporter is copied from moco-tf to print information before/after phase.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* CI error -> remove unused parameter

5 years ago[exo-tflite] Adding list of converters as TODO (#7228)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:33:45 +0000 (18:33 +0900)]
[exo-tflite] Adding list of converters as TODO (#7228)

This adds list of converters as TODO.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Prepare slots for template initialization (#7227)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:07:15 +0000 (18:07 +0900)]
[exo-tflite] Prepare slots for template initialization (#7227)

This adds slots for template initialization in CanonicalNodeConverter, which prevents code conflict.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[cusop] replace new with make_shared (#7211)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 09:06:06 +0000 (18:06 +0900)]
[cusop] replace new with make_shared (#7211)

custom::KernelRegistry will be created with make_shared.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
5 years ago[custom op] Build custom kernels (#6964)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 08:35:07 +0000 (11:35 +0300)]
[custom op] Build custom kernels (#6964)

* [custom op] Build custom kernels

Update cpu backend's `KernelGenerator` to build custom operation kernels

* Fix allocations in custom node kernel generator

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years agoAdd new backend for srcn (#7132)
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 5 Sep 2019 08:32:18 +0000 (17:32 +0900)]
Add new backend for srcn (#7132)

* [neurun] Add new backend for srcn

This patch has a basic framework for adding new backend.
In practice, normal behavior is not implemented.

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Fix an issue where arm_neon.h file is not always found

5 years ago[moco-tf] Return for ShapeInferencePass (#7220)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 08:21:55 +0000 (17:21 +0900)]
[moco-tf] Return for ShapeInferencePass (#7220)

This will return value from loco shape inference in ShapeInferencePass

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[moco-tf] Use loco::shape in import (#7217)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 08:19:36 +0000 (17:19 +0900)]
[moco-tf] Use loco::shape in import (#7217)

This will revise import to use loco shape instead of ShapeInferenceData
- also add guards for safety

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years ago[loco] Enhancing TypeInference::to() (#7206)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 08:10:12 +0000 (17:10 +0900)]
[loco] Enhancing TypeInference::to() (#7206)

Now 1) TypeInference::to()returns bool 2) checks previously inferred dtype

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[exo-tflite] Introducing ReluConverter (#7216)
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 08:07:23 +0000 (17:07 +0900)]
[exo-tflite] Introducing ReluConverter (#7216)

This converter converts loco::Relu to locoex::TFLRelu.

Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
5 years ago[moco-tf] Skip FuseBinaryIntoPreceding on Scalar (#7219)
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 5 Sep 2019 08:02:19 +0000 (17:02 +0900)]
[moco-tf] Skip FuseBinaryIntoPreceding on Scalar (#7219)

The current implementation of FuseBinaryIntoPreceding gets stuck when
it encounters scalar constants.

Let's make FuseBinaryIntoPreceding skip on this case.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
5 years ago[custom op] Free custom op userdata in CustomNode destructor (#7213)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Sep 2019 07:54:48 +0000 (10:54 +0300)]
[custom op] Free custom op userdata in CustomNode destructor (#7213)

- Makes userdata sized as this is required to use tflite flexbuffers format
- Changes userdata type to char* in order to properly delete it
- initialize custom kernel fields
- free memory using delete[]

Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
5 years ago[cus_op] remove unnecessary header dependency in nnfw_dev.hpp (#7209)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Sep 2019 07:50:36 +0000 (16:50 +0900)]
[cus_op] remove unnecessary header dependency in nnfw_dev.hpp (#7209)

Move the include to implementation to remove depedencies.

Forwarding declarations are enough:
- Execution.h
- Graph.h
- CustomKernelRegistry.h

Unnecessary dependency:
- compiler/Compiler.h

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>