platform/core/ml/nnfw.git
6 years ago[Pure ACL] Record AvgPool2D operation in model (#671)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 00:14:39 +0000 (09:14 +0900)]
[Pure ACL] Record AvgPool2D operation in model (#671)

This commit allows pure ACL NN runtime to record AvgPool2D operation in its model.

Note that compilation and execution is not supported, yet.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL] Support valid padding for MaxPool2D (#670)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 00:13:55 +0000 (09:13 +0900)]
[Pure ACL] Support valid padding for MaxPool2D (#670)

* [Pure ACL] Support valid padding for MaxPool2D

This commit supports valid padding for MaxPool2D.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Remove unnecessary blank line

6 years agoUpdate document regarding docker image (#635)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Sun, 15 Apr 2018 23:49:44 +0000 (08:49 +0900)]
Update document regarding docker image (#635)

- Add link to HowToUseDockerImage.md in README.md
- Update docker image version in HowTo document

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years ago[NNAPI Random Test] Add 'concat_1' case (#674)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Sun, 15 Apr 2018 23:43:31 +0000 (08:43 +0900)]
[NNAPI Random Test] Add 'concat_1' case (#674)

This commit adds 'concat_1' test which allows us to test the
implementation of 'concat' operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFix comment in extract.py (#672)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Sun, 15 Apr 2018 23:27:03 +0000 (08:27 +0900)]
Fix comment in extract.py (#672)

This commit fixes typo in extract.py

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoIntroduce print_op.py (#673)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 12:00:40 +0000 (21:00 +0900)]
Introduce print_op.py (#673)

`print_op.py` prints operations of a TF model in order
with input/output shapes.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoTemporary separate support class from Conv2D (#665)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 13 Apr 2018 08:13:10 +0000 (17:13 +0900)]
Temporary separate support class from Conv2D (#665)

This will extract supporting class in Conv2D module to temporary file
- To separate NEON convFloat32() to it's own module

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoExtract implementations into separate files (#668)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 07:03:16 +0000 (16:03 +0900)]
Extract implementations into separate files (#668)

This commit extracts several implementations in Model.h/Model.cc into
separate files (to make it easy to read code).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAllow padding type configuration for 'max_pool_1' (#664)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 06:18:06 +0000 (15:18 +0900)]
Allow padding type configuration for 'max_pool_1' (#664)

This commit allows users to configure padding type for 'max_pool_1'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL Runtime] Support ReLU activation for Conv2D (#653)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 06:09:18 +0000 (15:09 +0900)]
[Pure ACL Runtime] Support ReLU activation for Conv2D (#653)

This commit introduces ReLU activation support for Conv2D operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoApply nnfw_kernel to 6 kernels used by inception v3 (#636)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 05:26:08 +0000 (14:26 +0900)]
Apply nnfw_kernel to 6 kernels used by inception v3 (#636)

* Apply nnfw_kernel to 6 kernels used by inception v3

- Apply nnfw_kernel to 6 kernels used by inception v3
- Also introduce NNFWKernels.lst file

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* Refine code to minimize diff

- Refine code to minimize diff

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years ago[NNOP] Use CLUniqueTensor for FC (#652)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 05:22:59 +0000 (14:22 +0900)]
[NNOP] Use CLUniqueTensor for FC (#652)

This commit uses CLUniqueTensor for fullyConnectedFloat32().

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoAdd more tests of Softmax kernel on ACL (#647)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 13 Apr 2018 04:29:33 +0000 (13:29 +0900)]
Add more tests of Softmax kernel on ACL (#647)

* Add more tests of Softmax kernel on ACL

This will add non uniform input for Softmax
- ss there is diff in float comparison, compareData() is changed to use epsilon_equal()
- and epsilon_equal() had compilation problem in Ubuntu 16.04, some headers was added

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

* use c++ header

6 years agoAdd tizen gbs build script (#625)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 04:14:32 +0000 (13:14 +0900)]
Add tizen gbs build script (#625)

To run, build docker image of https://github.sec.samsung.net/chunseok-lee/gbs_docker

6 years agoUpdate Android NN runtime TestGenerated (#645)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 13 Apr 2018 04:11:00 +0000 (13:11 +0900)]
Update Android NN runtime TestGenerated (#645)

- Related Issue: #459, #611
- Base version of Android NN Test: efd22b6
Merge "Make convFloat32 and convQuant8 not segfault when asking too much memory."

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years agoEnable NN Runtime unit tests in CI (#627)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 13 Apr 2018 04:09:58 +0000 (13:09 +0900)]
Enable NN Runtime unit tests in CI (#627)

This commit enabls NN Runtime unit test in CI

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years ago[Pure ACL Runtime] Support weight initialization (#649)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 04:03:00 +0000 (13:03 +0900)]
[Pure ACL Runtime] Support weight initialization (#649)

This commit introduces basic weight initialization infrastructure for
Conv2D operation support.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[NNOP] Introduce various init functions in TensorWrapper (#644)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 04:01:50 +0000 (13:01 +0900)]
[NNOP] Introduce various init functions in TensorWrapper (#644)

This commit introduces various init functions in TensorWrapper.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[NNAPI Random Test] Introduce 'avg_pool_1' (#646)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 03:49:14 +0000 (12:49 +0900)]
[NNAPI Random Test] Introduce 'avg_pool_1' (#646)

This commit introduces 'avg_pool_1' which allows us to test the
implementation of 'AvgPool2D' operation with random data.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[NNAPI random test] Introduce 'max_poool_1' (#643)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 01:40:42 +0000 (10:40 +0900)]
[NNAPI random test] Introduce 'max_poool_1' (#643)

This commit introduces 'max_pool_1' random test tool for testing
the implementation of MaxPool2D operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[NNOP] Introduce MatrixWeightAccessor and VectorOutputAccessor (#637)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 01:34:51 +0000 (10:34 +0900)]
[NNOP] Introduce MatrixWeightAccessor and VectorOutputAccessor (#637)

This commit introduces two classes:
- MatrixWeightAccessor
- VectorOutputAccessor

Those two classes will be used in fullyConnectedFloat32().

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoAdd Softmax kernel on ACL (#642)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 13 Apr 2018 01:31:28 +0000 (10:31 +0900)]
Add Softmax kernel on ACL (#642)

This will add Softmax kernel on ACL and a simple test

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years ago[NNOP] support vector and matrix in fromNNShape() (#640)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 01:23:02 +0000 (10:23 +0900)]
[NNOP] support vector and matrix in fromNNShape() (#640)

This commit adds functionality to support converting 1D and 2D tensors
in fromNNShape()

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoAdd Dockerfile_tizen (#634)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 00:42:29 +0000 (09:42 +0900)]
Add Dockerfile_tizen (#634)

- Add Dockerfile_tizen which support gbs build of Tizen

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years ago[Pure ACL Runtime] Support MaxPool2D op execution (#639)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 13 Apr 2018 00:42:18 +0000 (09:42 +0900)]
[Pure ACL Runtime] Support MaxPool2D op execution (#639)

This commit implements MaxPool2D operation execution for experimental
pure ACL NN runtime.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove the original constructor of StepExecutor and parameters (#568)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 13 Apr 2018 00:33:19 +0000 (09:33 +0900)]
Remove the original constructor of StepExecutor and parameters (#568)

* Remove the original constructor of StepExecutor and parameters

This commit removes the original constructor of StepExecutor, since we use only 2 parameter in our framework.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
* Remove blank line

6 years agoIntroduce RandomTestRunner (#633)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 22:17:36 +0000 (07:17 +0900)]
Introduce RandomTestRunner (#633)

This commit introduces RandomTestRunner, and revises all the NNAPI tests
based on random number generator to share the same framework.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL Runtime] Introduce logging infrastructure (#624)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 22:11:21 +0000 (07:11 +0900)]
[Pure ACL Runtime] Introduce logging infrastructure (#624)

This commit introduces basic logging infrastructure for experiemental
pure ACL NN runtime.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoadd other test cases in pooling (#631)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 12 Apr 2018 12:56:21 +0000 (21:56 +0900)]
add other test cases in pooling (#631)

6 years agoExtract nnfw_kernel selection into a macro (#626)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 12:01:26 +0000 (21:01 +0900)]
Extract nnfw_kernel selection into a macro (#626)

- Extract nnfw_kernel selection into a macro

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years agoFix NNAPI implementation for logging (#630)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 11:50:48 +0000 (20:50 +0900)]
Fix NNAPI implementation for logging (#630)

ANeuralNetworksExecution_setInput and ANeuralNetworksExecution_setOutput
are incorrectly defined currently.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoApply tap for test framework (#618)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 12 Apr 2018 11:14:00 +0000 (20:14 +0900)]
Apply tap for test framework (#618)

Apply tap for test framework. The outputs .tap file is going
to be used by jenkins plugin for reporting test results.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
6 years agoFix Tizen cross-build break (#628)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 10:03:38 +0000 (19:03 +0900)]
Fix Tizen cross-build break (#628)

This commit inserts explicit type instantiation on abs method to fix
Tizen cross-build break.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd handling options to test_driver.sh (#622)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 12 Apr 2018 08:43:49 +0000 (17:43 +0900)]
Add handling options to test_driver.sh (#622)

Enables test_driver.sh to handle options properly. Now test_driver.sh
can run only for unittest, frameworktest or verification.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
6 years agoIntroduce TensorWrapper for unittesting (#619)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 08:03:17 +0000 (17:03 +0900)]
Introduce TensorWrapper for unittesting (#619)

This commit introduces TensorWrapper for unittesting.
This class can be used various test cases in `src/kernel`.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoInitial version of ACL pooling with NEON (#621)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 12 Apr 2018 07:47:07 +0000 (16:47 +0900)]
Initial version of ACL pooling with NEON  (#621)

* remove unnecessary blanks

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Initial version of ACL pooling with NEON

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* add pooing with NEON in cmake

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* remove blanks

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
6 years ago[Pure ACL NN Runtime] Add Source/Sink (#615)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 04:55:06 +0000 (13:55 +0900)]
[Pure ACL NN Runtime] Add Source/Sink (#615)

This commit introduces the concept of Source and Sink which sets inputs
before execution, and gets outputs after execution.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUse CPU kernel as a default kernel (#614)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 04:52:26 +0000 (13:52 +0900)]
Use CPU kernel as a default kernel (#614)

* Use CPU kernel as a default kernel

- Use CPU kernel as a default kernel

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* Apply review feedback

- restrict scope of it variable

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years ago[Pure ACL Runtime] Set Conv2D strides (#608)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 04:50:53 +0000 (13:50 +0900)]
[Pure ACL Runtime] Set Conv2D strides (#608)

This commit set Conv2D stride parameter with values read from operands.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd missed TestGenerated.cpp in Android NN tests (#616)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 12 Apr 2018 04:48:29 +0000 (13:48 +0900)]
Add missed TestGenerated.cpp in Android NN tests (#616)

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years ago[NNOP]Introduce average pooling (#610)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 12 Apr 2018 04:31:53 +0000 (13:31 +0900)]
[NNOP]Introduce average pooling (#610)

6 years agoClean include section of Callbacks.h (#600)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 12 Apr 2018 02:50:53 +0000 (11:50 +0900)]
Clean include section of Callbacks.h (#600)

This commit cleans include section of Callbacks.h

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoInitial version of ACL Conv2D with NEON (#602)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 12 Apr 2018 02:21:17 +0000 (11:21 +0900)]
Initial version of ACL Conv2D with NEON (#602)

This will add Conv2D with NEON backend.
- implementation will be moved to another module after common codes are moved

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years ago[Pure ACL] Allow model to include MaxPool2D op (#606)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 02:03:18 +0000 (11:03 +0900)]
[Pure ACL] Allow model to include MaxPool2D op (#606)

This commit revises Pure ACL NN Runtime to include MaxPool2D operation
while constructing a model.

Note that execution is not supported, yet.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUse correct ANeuralNetworksExecution_setOutput signature (#605)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 02:03:12 +0000 (11:03 +0900)]
Use correct ANeuralNetworksExecution_setOutput signature (#605)

ANeuralNetworksExecution_setOutput should take void * (not const void *)
according to NNAPI specification.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[NNOP] The first version of NEON FC layer (#573)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 02:03:06 +0000 (11:03 +0900)]
[NNOP] The first version of NEON FC layer (#573)

This commit introduces the first version of NEON FC Layer.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoIntroduce nnfw_support_nnapi (#603)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 01:17:23 +0000 (10:17 +0900)]
Introduce nnfw_support_nnapi (#603)

This commit introduces 'nnfw_support_nnapi' library which provides
various helpers for implementing NNAPI.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoExtract CLUniqueTensor to another file (#578)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 00:44:49 +0000 (09:44 +0900)]
Extract CLUniqueTensor to another file (#578)

This commit extracts CLUniqueTensor to another file
in order to use this class in other OpenCL NN Layers.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[Pure ACL NN Runtime] Implement basic compilation (#596)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 00:14:05 +0000 (09:14 +0900)]
[Pure ACL NN Runtime] Implement basic compilation (#596)

This commit implements basic compilation phase for (experiemntal) pure
ACL NN runtime.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFIX: build fail due to fromNNShape() (#599)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 00:07:50 +0000 (09:07 +0900)]
FIX: build fail due to fromNNShape() (#599)

Build fail due to fromNNShape() is moved to namespace nnfw::kernel::acl::util.
This commit fixes this fail by chainging `fromNNShape()` to
`util::fromNNShape()`.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoImplement naive feature map and kernel update (#585)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 12 Apr 2018 00:07:23 +0000 (09:07 +0900)]
Implement naive feature map and kernel update (#585)

* Implement naive feature map and kernel update

This commit implement unoptimize, naitve offset calulation (which is
easy to debug).

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

6 years ago[NNOP] First version of MaxPoolingFloat32 (#563)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 23:48:11 +0000 (08:48 +0900)]
[NNOP] First version of MaxPoolingFloat32 (#563)

* add softmax unittest

* fix typoes (IFM_H -> IFM_C)

* modify dims (batch_size and input_size)

* Fix softmax unnittest according to comments
-remove empty lines
-add empty lines to the end of codes
-resolve the conflict related with #472.
-modify equality between two floats by using nfw::util::fp32::epsilon_equal

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* add header files for softmax unittest

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* add new line

add new line at the end of file

* [NNOP] First version of MaxPoolingFloat32

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* initialize data with increasing value

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* Move maxpool kernel to cl folder

* add maxpool acl kernel operator prototypes

* add new line

* change maxpool names as #574

* change names to align function prototype  with NN runtime.

6 years agoFix tizen cross/obs build fail (#595)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 12:43:32 +0000 (21:43 +0900)]
Fix tizen cross/obs build fail (#595)

1. For obs build, save downloaded_deps.tar.gz to nnfw/packaging
2. To distinguish obs build, introduce OBS_BUILD flag

6 years agoNew inception models test and change default (#579)
오형석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 10:20:59 +0000 (19:20 +0900)]
New inception models test and change default (#579)

- New inception models: inception module (small inception), inception slim
- Test small inception as default, and disable slim and nonslim

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
6 years agoexit when unittet fail (#587)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 10:20:30 +0000 (19:20 +0900)]
exit when unittet fail (#587)

6 years agoUncomment remaining comment of LOG in ModelBuilder (#564)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 11 Apr 2018 09:22:32 +0000 (18:22 +0900)]
Uncomment remaining comment of LOG in ModelBuilder (#564)

This commit uncomments remaining comment of LOG in ModelBuilder.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoEnable building Android NN tests (#580)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 08:42:06 +0000 (17:42 +0900)]
Enable building Android NN tests (#580)

Building Android NN tests are on by default.
In case of g++ < 6.3, it is disabled to avoid build failure in
TestGenerated.cpp.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years agoBug fix in run_test.sh (#586)
오형석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 08:41:24 +0000 (17:41 +0900)]
Bug fix in run_test.sh (#586)

Bug fix: parsing error by '/' when test have sub-directory

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
6 years agoRename acl Conv2D filename (#574)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 07:50:59 +0000 (16:50 +0900)]
Rename acl Conv2D filename (#574)

* Rename acl Conv2D filename

This will remove _acl suffix from filename as it's inside cl folder

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

6 years agoRemove temporary include of ErrorStatus in ExecutionBuilder (#560)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 11 Apr 2018 07:47:38 +0000 (16:47 +0900)]
Remove temporary include of ErrorStatus in ExecutionBuilder (#560)

This commit removes temporary include of ErrorStatus in ExecutionBuilder and enables that include in HallInterfaces.h

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoRemove unused PreparedModelCallback (#555)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 11 Apr 2018 07:46:46 +0000 (16:46 +0900)]
Remove unused PreparedModelCallback (#555)

This commit removes unused PreparedModelCallback.
The PreparedModelCallback class is used to receive the error status of preparing a model as well as the prepared model from a task executing  asynchronously with respect to the runtime.
But in the environment of running on CPU only, it is no needed.

If it is needed later, can be copied from AndroidNN or implemented on our own.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoRemove partitioning(device) functions in ExecutionBuilder (#550)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 11 Apr 2018 07:45:58 +0000 (16:45 +0900)]
Remove partitioning(device) functions in ExecutionBuilder (#550)

This commit removes partitioning(device) functions in ExecutionBuilder.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoInitialize CLScheduler inside NN runtime (#548)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 07:45:28 +0000 (16:45 +0900)]
Initialize CLScheduler inside NN runtime (#548)

* Initialize CLScheduler inside NN runtime

ARM Compute Library requires CLScheduler to be initialized before any CL
operations.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use 'nnfw::kernel::acl::Initialize'

6 years ago[NNOP] Remove unnecessary blank line (#576)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 07:37:18 +0000 (16:37 +0900)]
[NNOP] Remove unnecessary blank line (#576)

This commit removes an unnecessary blank line in
`src/kernel/acl/src/cl/FullyConnected.test.cpp`.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[NNAPI Unittest Conv1] Initialize inputs correctly (#575)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 07:31:32 +0000 (16:31 +0900)]
[NNAPI Unittest Conv1] Initialize inputs correctly (#575)

This commit fixes a bug in 'nnapi_unittest_conv_1' which incorrectly
initializes inputs.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoApply RELU to the FC layer. (#572)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 07:19:59 +0000 (16:19 +0900)]
Apply RELU to the FC layer. (#572)

This commit adds functionality of activation RELU into the FC layer.
This commit also adds a test case for RELU.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[NNOP] Introduce module shape (#570)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 07:18:10 +0000 (16:18 +0900)]
[NNOP] Introduce module shape (#570)

This commit introduces a module shape. This module includes
getSizeOfDimension(), fromVectorNNShape(), and fromNNShape().
These functions are commonly used in various layer implementations.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoSupport ReLU activation (#571)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 06:26:06 +0000 (15:26 +0900)]
Support ReLU activation (#571)

This commit revises Conv2D operation kernel to support ReLU activation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoGather acl kernel operator prototypes (#569)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 06:07:13 +0000 (15:07 +0900)]
Gather acl kernel operator prototypes (#569)

* Gather acl kernel operator prototypes

This will gather acl kernel operator prototypes to root include folder

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

6 years agoUpdate convolution manual calculation xls (#562)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 05:44:34 +0000 (14:44 +0900)]
Update convolution manual calculation xls (#562)

This will update xls file with 3x5 input with 2 kernels

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years ago[NNOP] The first version of reshape layer (#566)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 05:36:37 +0000 (14:36 +0900)]
[NNOP] The first version of reshape layer (#566)

This commit introduces the first version of reshape layer using ACL.
Unit test will be added more in later commits.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoRemove ext libs used to build TF Lite (#541)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 05:32:51 +0000 (14:32 +0900)]
Remove ext libs used to build TF Lite (#541)

For issue #491

This patch is to remove external libs that were used to build TF Lite and to use a script that brings
those libraries from the tensorflow directory.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
6 years agoMove conv kernel to cl folder (#561)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 05:00:51 +0000 (14:00 +0900)]
Move conv kernel to cl folder (#561)

This will move Conv kernel source into cl folder for cl implementations

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agotflite_run: initialize _elapsed in ElapsedTime (#559)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 04:38:26 +0000 (13:38 +0900)]
tflite_run: initialize _elapsed in ElapsedTime (#559)

Fixes issue #540

This patch initializes _elapsed in ElapsedTime as 0.0 to set a correct
time value.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
6 years agoAdd 3x5 2 kernel convolution test (#552)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 04:22:59 +0000 (13:22 +0900)]
Add 3x5 2 kernel convolution test (#552)

* Add 3x5 2 kernel convolution test

This will add 3x5 with 2 kernel convolution test and fix format conversions

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

6 years agoIntroduce interactive docker option (#545)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 04:03:03 +0000 (13:03 +0900)]
Introduce interactive docker option (#545)

To build and test continuously in the docker environment, run as below:
`$ DOCKER_INTERACTIVE=1 ./docker/Docker_build_cross_arm_ubuntu_without_aclbuild.sh`

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[Pure ACL] Fix build break (#556)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 03:57:38 +0000 (12:57 +0900)]
[Pure ACL] Fix build break (#556)

This commit removes inputs/outputs field from Plan class (as it now has
a reference to Model class which has inputs/outputs) to fix build break.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFix convolution kernel test failure (#557)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 11 Apr 2018 03:57:16 +0000 (12:57 +0900)]
Fix convolution kernel test failure (#557)

This will fix convolution kernel on acl test

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years ago[NNOP] The first version of fullyConnectedFloat32 (#547)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 01:55:51 +0000 (10:55 +0900)]
[NNOP] The first version of fullyConnectedFloat32 (#547)

This commit introduces the first version of fullyConnectedFloat32
to integrate ACL with NN runtime.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoRemove functions used in only ExecutionPlan in ExecutionBuilder (#546)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 11 Apr 2018 01:51:24 +0000 (10:51 +0900)]
Remove functions used in only ExecutionPlan in ExecutionBuilder (#546)

This commit removes functions used in only ExecutionPlan in ExecutionBuilder

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoIntroduce CLUniqueTensor (#551)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 01:47:21 +0000 (10:47 +0900)]
Introduce CLUniqueTensor (#551)

This commit introduces CLUniqueTensor which initialize and allocate
buffer in its constructor, and free that buffer in its destructor.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL] Pass NNAPI model to execution (#544)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 01:31:23 +0000 (10:31 +0900)]
[Pure ACL] Pass NNAPI model to execution (#544)

The following functions need to access model information through
ANeuralNetworksExecution object:
 - ANeuralNetworksExecution_setInput
 - ANeuralNetworksExecution_setOutput

This commit renames class Model in internal::arm_compute namespace as
Plan, revises it to include a reference to NNAPI model.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoSet arm_compute::TensorShape for bias correctly (#549)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 00:56:28 +0000 (09:56 +0900)]
Set arm_compute::TensorShape for bias correctly (#549)

This commit revises convFloat32 implementation based on ARM Compute to
correctly set bias shape. This change fixes clBuffer exception during
bias memory allocation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove comment from test_driver.sh (#542)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 00:30:40 +0000 (09:30 +0900)]
Remove comment from test_driver.sh (#542)

6 years agoInvoke NNFW ACL kernels via runtime (#535)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 11 Apr 2018 00:13:42 +0000 (09:13 +0900)]
Invoke NNFW ACL kernels via runtime (#535)

* Invoke NNFW ACL kernels via runtime

This commit allows users to invoke NNFW ACL Conv2D kernel via runtime.
It also adds link directory for ARM Compute Library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoEnable RESHAPE of CpuExecutor. (#496)
TANUJ TEKRIWAL/SRI-Bangalore-System SW/./삼성전자 [Tue, 10 Apr 2018 23:40:25 +0000 (05:10 +0530)]
Enable RESHAPE of CpuExecutor. (#496)

Add the RESHAPE operation file and enable the
operation in CpuExecutor.

Signed-off-by: Tanuj Tekriwal <tanuj.tekri@samsung.com>
6 years agoBring Android NN Runtime Generated Tests (#463)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Apr 2018 23:39:34 +0000 (08:39 +0900)]
Bring Android NN Runtime Generated Tests (#463)

C++ Tests generated from python specs are added.
Its build is default off since it requires g++ >= 7.
You can enable it by defining BUILD_ANDROID_NN_RUNTIME_TEST=ON.

Simple tests (float_xxx and add) pass.
For others (conv_quants_xxx, depthwise_xxx, etc), we have to enable
the code from android NN (currently enclosed with comment).

I included generated C++ not python spec file and generator script.
Because i) It tooks about 12 sec in my machine to generate.
       ii) I belive the tests seldom change.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years ago[Pure ACL] Store Network Inputs/Ouputs (#543)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 23:36:03 +0000 (08:36 +0900)]
[Pure ACL] Store Network Inputs/Ouputs (#543)

This commit revises tflite::Model and arm_comput::Model to store the
inputs and outputs of a given network.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoExtract general functions from Conv2D_acl.test.cpp (#539)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 22:29:29 +0000 (07:29 +0900)]
Extract general functions from Conv2D_acl.test.cpp (#539)

- TestEnvironment -> gtest_env.cpp
- initData() and compareData() -> util.cpp

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoUpdate the TensorFlow submodule to the latest commit (#537)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 09:12:59 +0000 (18:12 +0900)]
Update the TensorFlow submodule to the latest commit (#537)

This patch updates the TensorFlow submodule to the latest commit in the
nnfw branch.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
6 years agoFix broken links to tensorflow (#538)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 09:12:51 +0000 (18:12 +0900)]
Fix broken links to tensorflow (#538)

- Fix broken links to tensorflow

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years agoFix obs build fail on libkernelacl (#531)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:46:22 +0000 (17:46 +0900)]
Fix obs build fail on libkernelacl (#531)

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
6 years agoReturn correctly on NNAPI test failure (#536)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:41:57 +0000 (17:41 +0900)]
Return correctly on NNAPI test failure (#536)

This commit revises TfLiteInterpMatchApp to return boolean instead of
integer.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL NNRT] Introduce Conv2D Param Constructor (#528)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:41:25 +0000 (17:41 +0900)]
[Pure ACL NNRT] Introduce Conv2D Param Constructor (#528)

This commit introduces a constructor for implicit Conv2D Param class
which initializes parameters using arrays.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUse N/H/W/C ordering for fromNNShape (#530)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:41:16 +0000 (17:41 +0900)]
Use N/H/W/C ordering for fromNNShape (#530)

NNAPI assumes that N/H/W/C binding for 3D feature map tensor.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agogenerate xml test result for unittest (#527)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:31:52 +0000 (17:31 +0900)]
generate xml test result for unittest (#527)

test results with xml format are generated on report dir.
This files will be used on junit of CI.

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
6 years agoClean includes in NeuralNetworks.cpp (#533)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 10 Apr 2018 08:29:42 +0000 (17:29 +0900)]
Clean includes in NeuralNetworks.cpp (#533)

This commit cleans includes in NeuralNetworks.cpp (except NeuralNetworksOEM.h)

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoRemove unused includes and codes in CompilationBuilder (#529)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 10 Apr 2018 08:29:05 +0000 (17:29 +0900)]
Remove unused includes and codes in CompilationBuilder (#529)

This commit removes unused includes and codes in CompilationBuilder.

- Remove partition codes
- enable VLOG in constructor
- Remove ExecutionPlan codes
- Remove unused includes

Related : #503
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoRemove unused functions and includes in ModelBuilder (#512)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 10 Apr 2018 08:27:47 +0000 (17:27 +0900)]
Remove unused functions and includes in ModelBuilder (#512)

This commit removes unused functions and includes in ModelBuilder.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoIntroduce nnfw::util::tensor::Object (#505)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 10 Apr 2018 08:10:12 +0000 (17:10 +0900)]
Introduce nnfw::util::tensor::Object (#505)

This commit introduces nnfw::util::tensor::Object, which makes it easy
to generate a random tensor object for testing.

This commit also simplifies nnapi_test and nnapi_unintest_conv_1
implementations using this new helper class.

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