platform/core/ml/nnfw.git
5 years agoRemove unused/unneeded SubGraphContext methods (#5173)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 10 May 2019 06:27:42 +0000 (15:27 +0900)]
Remove unused/unneeded SubGraphContext methods (#5173)

- Remove `releaseAt` which is unused
- Remove `getAt` which is a duplicate

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoChange default layout of acl backend to NHWC (#5159)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 10 May 2019 06:18:58 +0000 (15:18 +0900)]
Change default layout of acl backend to NHWC (#5159)

* Change default layout of acl backend to NHWC

This commit changes default layout of acl backend to NHWC.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
* Enable NCHW test for acl backend

This commit enable NCHW test for acl backend
 - Introduce ACL_DEFAULT_LAYOUT configuration for test by layout

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
* Fix failures of NCHW tests

This commit fixes failures of NCHW tests.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoIntroduce layout info in model operand (#5172)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 May 2019 04:39:43 +0000 (13:39 +0900)]
Introduce layout info in model operand (#5172)

Set model operand's shape layout info in operand info to support more layout from model
Default value is NHWC

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoFix compile error. (#5170)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 9 May 2019 09:21:52 +0000 (18:21 +0900)]
Fix compile error. (#5170)

- fix unintended implicit fallthrough in switch case.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoIntroduce asActivationLayerInfo converting activation code to ActivationLayerInfo...
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 9 May 2019 08:07:16 +0000 (17:07 +0900)]
Introduce asActivationLayerInfo converting activation code to ActivationLayerInfo (#5144)

This commit introduces asActivationLayerInfo converting activation code to ActivationLayerInfo.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years ago[tflitefile_tool] Add config option for benchmark tool to save model config file...
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 9 May 2019 05:19:21 +0000 (14:19 +0900)]
[tflitefile_tool] Add config option for benchmark tool to save model config file (#5145)

* [tflitefile_tool] Add config option for benchmark tool

This patch adds the `-c` and `--config` options.
This option will print the configuration information of each operator.

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Save configuration file

This patch allows to save the configuration info about model

Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
5 years agoIntroduce ParallelScheduler (#5155)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 9 May 2019 05:09:37 +0000 (14:09 +0900)]
Introduce ParallelScheduler (#5155)

Introduce `ParallelScheduler` along with `Worker` and `ThreadPool`.

Part of #4920

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoOrganizing the files past the date. (#5166)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 9 May 2019 00:56:33 +0000 (09:56 +0900)]
Organizing the files past the date. (#5166)

- Make backup folder `doc/2018`.
- Move the files past the date, if possible.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoUpdate `roadmap.md` (#5148)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 8 May 2019 08:15:25 +0000 (17:15 +0900)]
Update `roadmap.md` (#5148)

* Update `roadmap.md`

- create document sub folder named `2018`
- move the last `roadmap.md` document and `nnfw_architecture` image to 2018 folder.
- create new `roadmap.md` and `nnfw_architecture` for 2019 with updated contests.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoUpdate `workgroups.md` document (#5160)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 8 May 2019 08:10:12 +0000 (17:10 +0900)]
Update `workgroups.md` document (#5160)

* Update `workgroups.md` document

- Update workgroups.md document with latest workgroup configuration.
- Tempolarly rename old file to `2018_workgroups.md` for backup.
  It will moved to `docs/2018` folder after #5148 merged.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoChange ConcatLayer to support NHWC (#5165)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 8 May 2019 05:35:03 +0000 (14:35 +0900)]
Change ConcatLayer to support NHWC (#5165)

This commit ConcatLayer to support NHWC.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoRemove pack simple kernel (#5163)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 May 2019 05:11:21 +0000 (14:11 +0900)]
Remove pack simple kernel (#5163)

Remove pack simple kernel in libs/ARMComputeEx
Use stack kernel in acl 19.02
Fix generated test to test 2D input (permutation issue)

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRun mixed backend for test coverage (#5164)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 May 2019 05:10:54 +0000 (14:10 +0900)]
Run mixed backend for test coverage (#5164)

Use mixed backend setting for test coverage run

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago Redo PermuteLayer run as template (#5107)
Дилшоджон Умронхонович Пошшоев/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 8 May 2019 04:36:49 +0000 (07:36 +0300)]
 Redo PermuteLayer run as template (#5107)

* Redo PermuteLayer run as template

PermuteLayer always assumes, that its data type is float. It was causing
an error during HE scheduler implementation. PR 5073

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Revert "Not supported yet" to NYI

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Merge ctors

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
5 years agoRemove nnapi dependency in neurun (#5153)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 May 2019 01:08:08 +0000 (10:08 +0900)]
Remove nnapi dependency in neurun (#5153)

Remove nnapi dependency in neurun core and backend code

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove Subgraph and SubgraphContext to upper dir (#5143)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 7 May 2019 09:29:19 +0000 (18:29 +0900)]
Move Subgraph and SubgraphContext to upper dir (#5143)

Move Subgraph and SubgraphContext from `model::operation::` to
`model::`.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoSupport NHWC layout for ConstantInitializer (#5139)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 7 May 2019 09:27:29 +0000 (18:27 +0900)]
Support NHWC layout for ConstantInitializer (#5139)

This commit supports NHWC layout for ConstantInitializer.
  - Support NHWC layout for ConstantInitializer.
  - Support calculating the offset of cpu tensor up to 4 dimensions and in NHWC.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoRemove workaround mixed test (#5156)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 May 2019 08:35:32 +0000 (17:35 +0900)]
Remove workaround mixed test (#5156)

Remove workaround for mixed backend test because CI scripts are updated

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoInternal padding type string converter (#5151)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 May 2019 04:59:24 +0000 (13:59 +0900)]
Internal padding type string converter (#5151)

Use internal padding type to convert padding type to string instead of NNAPI PaddingCode

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove resolving transpose convolution padding (#5150)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 May 2019 04:59:01 +0000 (13:59 +0900)]
Move resolving transpose convolution padding (#5150)

Move resolving transpose convolution operation's padding type: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMerge Lowered and Subgraph section in Graph (#5122)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 7 May 2019 04:44:44 +0000 (13:44 +0900)]
Merge Lowered and Subgraph section in Graph (#5122)

Subgraph is also part of LOWERED phase so we should not distinguish
these members.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoRevise Job class for ParallelExecutor (#5121)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 7 May 2019 04:44:32 +0000 (13:44 +0900)]
Revise Job class for ParallelExecutor (#5121)

- Introduce `Backend` as a member
- Intrdouce `reset` method for next execution

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoIntroduce FullyConnectedReshapingLayer into ARMComputeEX (#5140)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 7 May 2019 04:44:19 +0000 (13:44 +0900)]
Introduce FullyConnectedReshapingLayer into ARMComputeEX (#5140)

This commit introduces FullyConnectedReshapingLayer into ARMComputeEx.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoRemove unpack simple kernel (#5135)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 May 2019 04:43:26 +0000 (13:43 +0900)]
Remove unpack simple kernel (#5135)

* Remove unpack simple kernel

Remove unpack simple kernel in libs/ARMComputeEx
Use unstack kernel in acl 19.02
Fix generated test to test 3D input (permutation issue)

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Update comment, remove change in pack

5 years agoFix Operands::exist to be able to remove operands (#5146)
Дилшоджон Умронхонович Пошшоев/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 7 May 2019 03:33:10 +0000 (06:33 +0300)]
Fix Operands::exist to be able to remove operands (#5146)

If we remove operands after building a graph, existing method doesn't
work. Moreover, complexity of std::unordered_map::find is O(1), so we
don't loose much in time

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
5 years agoSupport NHWC layout for calculating the offset of acl tensor (#5137)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 3 May 2019 09:41:31 +0000 (18:41 +0900)]
Support NHWC layout for calculating the offset of acl tensor (#5137)

This commit supports NHWC layout for calculating the offset of acl tensor.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoMove fullyconnected activation resolve (#5132)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:59:42 +0000 (16:59 +0900)]
Move fullyconnected activation resolve (#5132)

Move fullyconnected operation's activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove maxpool padding & activation resolve (#5120)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:53:13 +0000 (16:53 +0900)]
Move maxpool padding & activation resolve (#5120)

Move maxpool padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove OperationIndex definition to Index.h (#5117)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 3 May 2019 07:52:24 +0000 (16:52 +0900)]
Move OperationIndex definition to Index.h (#5117)

As all index classes other than `OperationIndex` are all in `Index.h`,
this commit moves `OperationIndex` definition to `Index.h` and removes
`OperationIndex.h`.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoMove elementwise op padding & activation resolve (#5129)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:34:00 +0000 (16:34 +0900)]
Move elementwise op padding & activation resolve (#5129)

Move arithmetic elementwise operation padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove conv2d padding & activation resolve (#5124)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:33:40 +0000 (16:33 +0900)]
Move conv2d padding & activation resolve (#5124)

Move convolution padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove averagepool padding & activation resolve (#5123)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:33:20 +0000 (16:33 +0900)]
Move averagepool padding & activation resolve (#5123)

* Move averagepool padding & activation resolve

Move average pool padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix constant check assertion and fix bug

- Fix to set explicit padding type
- Remove assert because asScalar has same assertion

5 years agoMove L2 pooling padding & activation resolve (#5126)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:30:37 +0000 (16:30 +0900)]
Move L2 pooling padding & activation resolve (#5126)

Move l2 pooling padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove depthwise-conv padding & activation resolve (#5119)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 07:26:03 +0000 (16:26 +0900)]
Move depthwise-conv padding & activation resolve (#5119)

Move depthwise convolution padding & activation type resolve: backend to frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRuntime test with mixed backends (#5125)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 3 May 2019 06:51:34 +0000 (15:51 +0900)]
Runtime test with mixed backends (#5125)

* Runtime test with mixed backends

Initial version of runtime test with mixed backends (Fixed backend
assignment)

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Remove logging

* Fix typo comments and add TODO

5 years ago[dotdump] Show Subgraphs (#5128)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 3 May 2019 06:24:01 +0000 (15:24 +0900)]
[dotdump] Show Subgraphs (#5128)

Show subgraphs using dot's subgraph(cluster) feature.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoChange in GTests of PReLU (#5110)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 May 2019 02:04:26 +0000 (11:04 +0900)]
Change in GTests of PReLU (#5110)

* Change in GTests of PReLU

Since prelu_ex_float_1 and prelu_ex_float_2 perform similar tests
This patch adds a replacement test

Signed-off-by: prasannar <prasanna.r@samsung.com>
* Add Quant8 test cases for PReLU op

This patch adds Quant8 test cases for PReLU op

Signed-off-by: prasannar <prasanna.r@samsung.com>
5 years agoMove BackendSet to graph::BackendSet (#5130)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 3 May 2019 00:56:03 +0000 (09:56 +0900)]
Move BackendSet to graph::BackendSet (#5130)

Move `BackendSet` to `graph::BackendSet`. It was in
`graph::operand::BackendSet` which is misleading.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years ago[neurun] Introduce CopySource and CopySink (#5116)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 2 May 2019 05:47:49 +0000 (14:47 +0900)]
[neurun] Introduce CopySource and CopySink (#5116)

This commit Introduces CopySource and CopySink.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoRevise header include in OperationFactory.cc (#5101)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 May 2019 05:36:22 +0000 (14:36 +0900)]
Revise header include in OperationFactory.cc (#5101)

- Change to use brackets for core header include
- Include NNAPIConverter.h to prepare to use activation and padding type converter

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRenewed README.md with 2019 plan (#5102)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 2 May 2019 05:35:50 +0000 (14:35 +0900)]
Renewed README.md with 2019 plan (#5102)

* Renewd README.md with 2019 plan

- Update target platform
- Trim the sentence
- Add notification about _nncc_ integration

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
* Fix typo.

- remove duplicated word.

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years ago[neurun] Introduce getting layout into backend (#5030)
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 2 May 2019 04:42:05 +0000 (13:42 +0900)]
[neurun] Introduce getting layout into backend (#5030)

This commit introduces getting layout into backend tensors.

Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
5 years agoActivation builder using internal activation type (#5099)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 May 2019 04:08:40 +0000 (13:08 +0900)]
Activation builder using internal activation type (#5099)

Introduce activation builder append method using neurun internal activation type

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoUpdate sample app document (#5104)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 May 2019 03:57:26 +0000 (12:57 +0900)]
Update sample app document (#5104)

- Describe runtime with tensorfliw lite is not official support
- Tensorflow -> tensorflow lite
- Update chapter "Build a model": title, etc.

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRemove unused RandomObject.h (#5108)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 May 2019 01:14:22 +0000 (10:14 +0900)]
Remove unused RandomObject.h (#5108)

Remove unused RandomObject
Random value generation for tests are defined at libs/tflite/include/tflite/Diff.h

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoSoftware requirement specification for 2019 (#5105)
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 30 Apr 2019 12:26:24 +0000 (21:26 +0900)]
Software requirement specification for 2019 (#5105)

* Software requirement specification for 2019

- Initial draft of SRS

Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
5 years agoIntroduce SubgraphIndex (#5106)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 09:05:56 +0000 (18:05 +0900)]
Introduce SubgraphIndex (#5106)

`OperationIndex` was used for Subgraph indices, which can be confusing.
This commit introduces `SubgraphIndex` for `Subgraph`s.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoAdd HowtoMakeSampleAppOnNnfw.md (#4129)
Дилшоджон Умронхонович Пошшоев/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 30 Apr 2019 06:12:54 +0000 (09:12 +0300)]
Add HowtoMakeSampleAppOnNnfw.md (#4129)

* Add HowtoMakeSampleAppOnNnfw.md

Related issue: 4128
Add tutorial about How to make a sample app on nnfw

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Fix "_nnfw_ API" as "NNAPI"

Fix "_nnfw_ API" as "NNAPI"

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Describe how to implement app with nnfw

Prev version was how to implement in the level of nnapi_delegate. This
version is how to create on top of nnapi_delegate

Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
5 years agoRemove return in cpu backend kernel (#5096)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 30 Apr 2019 06:00:02 +0000 (15:00 +0900)]
Remove return in cpu backend kernel (#5096)

Remove unused bool type return in cpu backend kernel
Remove bool type return in helper function: always return true
Remove __wur (warning unused return) attribute in helper function

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[dotdump] Remove Operation LowerInfo (#5087)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 05:07:21 +0000 (14:07 +0900)]
[dotdump] Remove Operation LowerInfo (#5087)

As now LowerInfo is per-subgraph(not per-operation), we need to remove
Operation LowerInfo and Backend label from `DotNodeInfo`.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoActivation range calculator using internal type (#5093)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 30 Apr 2019 05:04:18 +0000 (14:04 +0900)]
Activation range calculator using internal type (#5093)

Introduce helper function in cpu backend for activation range calculation
Helper function use neurun internal activation type instead of NNAPI FuseCode type

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoUse nchw::View instead of Reader (#5084)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 03:41:45 +0000 (12:41 +0900)]
Use nchw::View instead of Reader (#5084)

`Reader` is only for tensors of no paddings, while `nchw::View` can
cover padding cases.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoMove graph::Index to util::Index (#5094)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 03:41:23 +0000 (12:41 +0900)]
Move graph::Index to util::Index (#5094)

`graph::Index` is a class for indices in general, so it should not
belong to `graph` namespace.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoRemove Operation::InitParam (#5095)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 03:41:13 +0000 (12:41 +0900)]
Remove Operation::InitParam (#5095)

This was just for creation of operations from NNAPI, so it is not used
any longer.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoIntroduce activation and padding type converter (#5092)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 30 Apr 2019 01:01:03 +0000 (10:01 +0900)]
Introduce activation and padding type converter (#5092)

Introduce nnapi to neurun internal activation and padding type converter

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Revise Executor classes to have a proper container for Subgraph (#5035)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 30 Apr 2019 00:50:16 +0000 (09:50 +0900)]
[neurun] Revise Executor classes to have a proper container for Subgraph (#5035)

* [neurun] Revise Executor classes to have a proper container for Subgraph

- ExecutorBase has no any container for Subgraph
- LinearExecutor has a vector container
- DataflowExecutor has a map container

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* Extract Element as a file from Linear class

* Revise Executor classes with owned proper containers

5 years agoExecute add operation in interpreter (#5088)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 30 Apr 2019 00:47:22 +0000 (09:47 +0900)]
Execute add operation in interpreter (#5088)

Implement naive interpreter execution module
Fix interpreter gtest's input/output value

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoPrepare interpreter add operation (#5060)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 29 Apr 2019 06:51:27 +0000 (15:51 +0900)]
Prepare interpreter add operation (#5060)

Add methods in ExecEnv to check and get tensor
Restrict ExecEnv to own tensors have buffer space
Assert for add operation

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoIntroduce neurun activation and padding enum class (#5075)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 29 Apr 2019 04:10:00 +0000 (13:10 +0900)]
Introduce neurun activation and padding enum class (#5075)

Introduce neurun activation type enum: none, relu, relu1, relu6
Introduce neurun padding type enum: explicit, same, valid

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago [neurun] Enable Split op in neurun (#5068)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 26 Apr 2019 04:24:19 +0000 (13:24 +0900)]
 [neurun] Enable Split op in neurun  (#5068)

* [neurun] Enable Split op in neurun

This commit enables Split op in neurun for acl_cl

Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
* Fix nnapi_delegate bug

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix build error by rebase

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoEnable custom oprations test (#5071)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 26 Apr 2019 00:48:56 +0000 (09:48 +0900)]
Enable custom oprations test (#5071)

Enable custom operations framework test again

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Rename classes in model::operand (#5062)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 25 Apr 2019 04:40:07 +0000 (13:40 +0900)]
[neurun] Rename classes in model::operand (#5062)

Rename all classes in `model::operand` Many changes are included in this
commit to avoid conflicts many times.

- `operand::Object` -> `Operand`
- `operand::Info` -> `OperandInfo`
- `operand::Data` -> `Data`
- `operand::DataType` -> `DataType`
- `operand::TypeInfo` -> `TypeInfo`
- `operand::Shape` -> `Shape`
- `operand::Index` -> `OperandIndex`
- `operand::IO::Index` -> `IOIndex`
- `operand::IndexMap` -> `OperandIndexMap`
- `operand::IndexSequence` -> `OperandIndexSequence`

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoRemove usage field in operand (#5066)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 25 Apr 2019 02:18:24 +0000 (11:18 +0900)]
Remove usage field in operand (#5066)

Remove usage field and related methods in internal operand

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Rename classes in model::operation (#5018)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 24 Apr 2019 08:08:11 +0000 (17:08 +0900)]
[neurun] Rename classes in model::operation (#5018)

* [neurun] Rename classes in model::operation

Rename the rest of classes in `model::operation` other than Operation
derivatives and subgraph modules. Many changes are included in this
commit to avoid conflicts many times.

- `operation::NodeVisitor` -> `OpVisitor`
- `operation::OperandConstraint` -> `OperandConstraint`
- `operation::IndexList` -> `OperationIndexList`
- `operation::Set` -> `OperationManager`
- `operation/Op.lst` -> `Op.lst`
- `operation/Node.Include.h` -> `Operation.Include.h`

Part of #4985

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Fix nits

* Rename OpXXX to OperationXXX

- OpVisitor.h => OperationVisitor.h
- Op.lst => Operations.lst

* Rebase fix

* Rename OperationManager to Operations

* Fix ifdef guards - OperandConstraint and Operation

5 years agoImplement COPY kernel for PermuteLayer (#5052)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 24 Apr 2019 08:00:12 +0000 (17:00 +0900)]
Implement COPY kernel for PermuteLayer (#5052)

* Implement COPY kernel for PermuteLayer

PermuteLayer was supported NHWC to NCHW or vice versa. So it was not
able to handle just COPY case.

For #5044

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Handle paddings

5 years agoRemove operand usage check in neurun internal (#5057)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 24 Apr 2019 07:59:51 +0000 (16:59 +0900)]
Remove operand usage check in neurun internal (#5057)

Remove operand usage check assertion

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoCheck operand usage in frontend (#5056)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 24 Apr 2019 05:13:15 +0000 (14:13 +0900)]
Check operand usage in frontend (#5056)

Check operand usage by using operand usage vector in nnapi frontend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRemove make tflite (#5055)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 24 Apr 2019 03:54:42 +0000 (12:54 +0900)]
Remove make tflite (#5055)

Remove make tflite command: not used anymore for svace and coverity check

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoUpdate howto document (#5047)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 24 Apr 2019 00:48:31 +0000 (09:48 +0900)]
Update howto document (#5047)

Update howto document's tflite model link

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoRename hasData to isConstant (#5046)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 10:37:34 +0000 (19:37 +0900)]
Rename hasData to isConstant (#5046)

Rename hasData to isConstant
It is used to check operand is constant

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoFix LD_LIBRARY_PATH setting for model benchmark (#5051)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 10:32:22 +0000 (19:32 +0900)]
Fix LD_LIBRARY_PATH setting for model benchmark (#5051)

Fix LD_LIBRARY_PATH setting for model benchmark to use pure acl

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoFix validation test (#5034)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 10:32:00 +0000 (19:32 +0900)]
Fix validation test (#5034)

Set operand's value for activation to ANEURALNETWORKS_FUSED_NONE
Test model's input operand numbers and size are also changed: [0, 1, 2] -> [0, 1]
By this, we can enable all validation test on acl-cl backend

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoManage operand stack and operation stack for interpretation (#5020)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 08:31:17 +0000 (17:31 +0900)]
Manage operand stack and operation stack for interpretation (#5020)

- Introduce operand ready checker
- Introduce operation stack to save prepared operation
- Manage operand stack and operation stack and show log

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoIntroduce operand usage vectorin frontend (#5039)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 07:59:17 +0000 (16:59 +0900)]
Introduce operand usage vectorin frontend (#5039)

Collect operand usage info in frontend
Clear when model building is finished
Prepare removing nnapi-dependent usage info in neurun model operand

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoIntroduce build option for tflite accuracy tool (#5048)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 07:58:13 +0000 (16:58 +0900)]
Introduce build option for tflite accuracy tool (#5048)

Introduce build option for tflite accuracy tool and set off as default

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoChange default runtime to neurun (#5042)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 07:09:14 +0000 (16:09 +0900)]
Change default runtime to neurun (#5042)

* Change default runtime to neurun

Change default runtime: pacl -> neurun

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Enable loggin runtime default

5 years ago[batch_run] A batch execution tool used to run experiments (#4507)
Saulo Aldighieri Moraes/AI R&D /SRBR/Engineer/삼성전자 [Tue, 23 Apr 2019 07:06:08 +0000 (04:06 -0300)]
[batch_run] A batch execution tool used to run experiments (#4507)

* Related: #4405

The batch execution tool can be used to run experiments. It reads a neural network model from a file and a series of input images from a directory, runs each image through the network, and collect
statistics, such as execution time and accuracy.

Signed-off-by: Saulo A. Moraes <s.moraes@samsung.com>
* Remove boost_ext reference

Build script cleanup, remove unnecessary reference to boost_ext.

Signed-off-by: Saulo A. Moraes <s.moraes@samsung.com>
* Related: #4405

  Code review fixes and tool rename from batch_run to tflite_accuracy.

Signed-off-by: Saulo A. Moraes <s.moraes@samsung.com>
5 years agoRemove operand usage getter methods (#5038)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 23 Apr 2019 04:20:20 +0000 (13:20 +0900)]
Remove operand usage getter methods (#5038)

- Remove unused isModelInput() method
- Remove usage() method. Use hasData() and model's input/output

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoIgnore try-run result on cross build (#5031)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 22 Apr 2019 03:50:16 +0000 (12:50 +0900)]
Ignore try-run result on cross build (#5031)

* Ignore try-run result

Ignore try-run result on cross build when finding cmake threads package
Threads package is checked when finding pre-installed tflite package

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix comment

5 years agoChange ARGMAX definition (#5021)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 22 Apr 2019 02:25:55 +0000 (11:25 +0900)]
Change ARGMAX definition (#5021)

Chagne ARGMAX definition same with current NNAPI
- Allow one axis reduce
- Output rank = input rank - 1

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoAdd printing info for filled memory in model_parser (#5028)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 19 Apr 2019 08:38:44 +0000 (17:38 +0900)]
Add printing info for filled memory in model_parser (#5028)

* Add printing info for filled memory in model_parser

Add printing info for filled memory such as weight in model_parser

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

5 years agoUse POSITION_INDEPENDENT_CODE property for tflite build (#5026)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 19 Apr 2019 05:40:57 +0000 (14:40 +0900)]
Use POSITION_INDEPENDENT_CODE property for tflite build (#5026)

Use cmake POSITION_INDEPENDENT_CODE property instead of setting gcc -fPIC compile option directly

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Apply code for merging node into subgraph to Graph (#5019)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 18 Apr 2019 07:01:17 +0000 (16:01 +0900)]
[neurun] Apply code for merging node into subgraph to Graph (#5019)

Apply code for merging node into subgraph to Graph instead of 1 subrgaph
1 node code

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
5 years agoRemove OBS_BUILD cmake define in Makefile (#5017)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 18 Apr 2019 05:36:19 +0000 (14:36 +0900)]
Remove OBS_BUILD cmake define in Makefile (#5017)

Remove OBS_BUILD cmake define in cmake configure because OBS_BUILD is not used in cmake any more

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoPrepare operand stack in interpreter (#5015)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 18 Apr 2019 04:39:15 +0000 (13:39 +0900)]
Prepare operand stack in interpreter (#5015)

Prepare operand stack in interpreter to save prepared operands to use

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Apply SubgraphContext(1 subgraph 1 node) (#5014)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 18 Apr 2019 02:02:42 +0000 (11:02 +0900)]
[neurun] Apply SubgraphContext(1 subgraph 1 node) (#5014)

Apply SubgraphContext(1 subgraph 1 node) to Graph, Linear, Compiler and
{Dataflow|Linear}Executor

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
5 years agoFix CMake to use STATUS for message (#5016)
박세희/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 18 Apr 2019 00:57:48 +0000 (09:57 +0900)]
Fix CMake to use STATUS for message (#5016)

This will fix message() to use STATUS instead if "--" string

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
5 years agoInterpreter ITensor Inherit backend ITensor (#5005)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 17 Apr 2019 07:15:33 +0000 (16:15 +0900)]
Interpreter ITensor Inherit backend ITensor (#5005)

Interpreter ITensor Inherit backend ITensor for more compatibility with other backends

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Rename operation::Node as Operation (#5013)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 17 Apr 2019 06:16:19 +0000 (15:16 +0900)]
[neurun] Rename operation::Node as Operation (#5013)

This is for reducing namespace operation.

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoFix a couple of noticeable clang static analyzer warnings (#4981)
Aleksei Grebenkin/AI Ecosystem Lab /SRR/Engineer/삼성전자 [Wed, 17 Apr 2019 04:01:58 +0000 (07:01 +0300)]
Fix a couple of noticeable clang static analyzer warnings (#4981)

* Fix a couple of noticeable clang static analyzer warnings

Fixed passing vector by value, lack of default switch case, dead code

Signed-off-by: Alexey Grebenkin <a.grebenkin@samsung.com>
* Correcting for PR comments

* Correcting for more PR comments

5 years agoFix define in cker header file (#5007)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 17 Apr 2019 01:12:48 +0000 (10:12 +0900)]
Fix define in cker header file (#5007)

Fix define __NNFW_CKER_CONCATENATION_H_ => __NNFW_CKER_CONCATENATION_H__
Fix define __NNFW_CKER_FXIED_POINT_H__ => __NNFW_CKER_GEMMLOWP_FIXED_POINT_H__

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoFix OperationIndex build break from Subgraph (#5012)
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 17 Apr 2019 01:10:19 +0000 (10:10 +0900)]
Fix OperationIndex build break from Subgraph (#5012)

It fixes build-break caused by Subgraph's use of model::operation::Index,
which is renamed to model::OperationIndex.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
5 years agoIntroduce interpreter class (#5006)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 17 Apr 2019 00:14:19 +0000 (09:14 +0900)]
Introduce interpreter class (#5006)

* Introduce interpreter class

Introduce interpreter class: run on assigned ExecEnv

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix define for header

5 years ago[neurun] Introduce SubgraphContext class (#4995)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 16 Apr 2019 08:28:08 +0000 (17:28 +0900)]
[neurun] Introduce SubgraphContext class (#4995)

This class would be used as a context class which has Subgraphs instead
of SubgraphSet in Graph

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
5 years agoModify cpu average pool kernel (#5004)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 16 Apr 2019 06:52:28 +0000 (15:52 +0900)]
Modify cpu average pool kernel (#5004)

Move loop invariant codes
Calculate filter count at once and compare

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Rename operation::Index as OperationIndex (#5002)
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 16 Apr 2019 02:28:08 +0000 (11:28 +0900)]
[neurun] Rename operation::Index as OperationIndex (#5002)

This is for reducing namespace operation.

Part of #4985

Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
5 years agoRemove axis conversion in libs/ARMComputeEx (#4992)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 15 Apr 2019 23:44:31 +0000 (08:44 +0900)]
Remove axis conversion in libs/ARMComputeEx (#4992)

Remove axis conversion in libs/ARMComputeEx because conversion should done before configuration
Fix axis conversion in pack/unpack acl-cl extend  kernel

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years agoMove gemmlowp code in cker (#4998)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 15 Apr 2019 23:44:19 +0000 (08:44 +0900)]
Move gemmlowp code in cker (#4998)

Move gemmlowp code in cker into cker/gemmlowp
Add namespace for gemmlowp

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
5 years ago[neurun] Change from SubgraphSet to SubgraphSequence (#4996)
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 15 Apr 2019 23:44:08 +0000 (08:44 +0900)]
[neurun] Change from SubgraphSet to SubgraphSequence (#4996)

Change the name SubgraphSet. Actually SubgraphSet has elements in order
so that SubgraphSequence is proper name.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
5 years agoRemove OpenCLEx codes (#4993)
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 15 Apr 2019 07:47:47 +0000 (16:47 +0900)]
Remove OpenCLEx codes (#4993)

- CLKernelLibraryEx includes OpenCL.h, not OpenCLEx.h
- There is no problem now

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>