platform/core/ml/nnfw.git
6 years agoCoding rule check script (#730)
오형석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 04:25:43 +0000 (13:25 +0900)]
Coding rule check script (#730)

Check coding rule for c++ code and python code
Use clang-format to check c++ coding rule, and use yapf to use python coding  rule based on PEP8

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
6 years agoClang format file for cpp coding rule (#712)
오형석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 04:25:25 +0000 (13:25 +0900)]
Clang format file for cpp coding rule (#712)

Define C++ coding rule

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
6 years ago[NNOP] Introduce MatrixOutputAccessor (#741)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 04:05:38 +0000 (13:05 +0900)]
[NNOP] Introduce MatrixOutputAccessor (#741)

This commit introduces MatrixOutputAccessor to process 2D output tensors.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoRegister ACL operators to NN runtime (#721)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Apr 2018 03:20:31 +0000 (12:20 +0900)]
Register ACL operators to NN runtime (#721)

This will add ACL operators to NN runtime "acl" items so that we can use them
- Operation itself is not verified yet, we need to test and fix if problems exist

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoRename and relocate logging for runtime (#713)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 02:11:24 +0000 (11:11 +0900)]
Rename and relocate logging for runtime (#713)

This commit renames and relocates logging for runtime (remove android dep.)

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoFix unusual assertion in CONV2D Op. (#707)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 02:11:03 +0000 (11:11 +0900)]
Fix unusual assertion in CONV2D Op. (#707)

This commit fixes unusual assertion in CONV2D Op likes #430.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoImplement Usage of test_driver.sh (#727)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 01:29:14 +0000 (10:29 +0900)]
Implement Usage of test_driver.sh (#727)

Fills Usage function which prints help messages for options.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
6 years agoFix softmax with ACL (#733)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Apr 2018 01:26:51 +0000 (10:26 +0900)]
Fix softmax with ACL (#733)

* Fix softmax with ACL

This will fix softmaxFloat32 implementation to use rank 2 input
- this change is to run Inception V3 model
- as ACL shrinks rank as high order size is 1, input/output actually be a vector

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* add test for rank 4

* apply for non-support ranks

* return false for release build

6 years agoRemove original ExecutionCallback inheritance (#728)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 01:26:07 +0000 (10:26 +0900)]
Remove original ExecutionCallback inheritance (#728)

This commit removes original ExecutionCallback inheritance.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoRemove remaining ExecutionPlan codes in ExecutionBuilder (#723)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 01:25:49 +0000 (10:25 +0900)]
Remove remaining ExecutionPlan codes in ExecutionBuilder (#723)

This commit removes remaining ExecutionPlan codes in ExecutionBuilder.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoAdd NYI message instead of assertion in CpuExecutor (#706)
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 01:25:29 +0000 (10:25 +0900)]
Add NYI message instead of assertion in CpuExecutor (#706)

This commit adds NYI message instead of assertion which causes CI failure in CpuExecutor.

Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
6 years agoAdd options for run_test.sh (#715)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 17 Apr 2018 00:58:34 +0000 (09:58 +0900)]
Add options for run_test.sh (#715)

* Add options for run_test.sh

Adds handling options for run_test.sh

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* Implement Usage of run_tests.sh

* Fix wrong description of --driverbin

6 years agoShow total number of unittest set (#710)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 00:57:31 +0000 (09:57 +0900)]
Show total number of unittest set (#710)

- Show total number of unittest set

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years agoAdd how-to-contribute document (#718)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 00:56:56 +0000 (09:56 +0900)]
Add how-to-contribute document (#718)

* Add how-to-contribute document

For issue #694

This commit adds the how-to-contribute document.

The document is based on
https://github.sec.samsung.net/STAR/nncc/blob/master/doc/contribution_guide.md.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
* Add a link to roadmap

* Add a note to mention the origin of this document

6 years agoadd pooling test cases which are similar to inception v3 slim (#735)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Apr 2018 00:21:31 +0000 (09:21 +0900)]
add pooling test cases which are similar to inception v3 slim (#735)

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
6 years ago[Pure ACL Runtime] Support Fully Connected (#731)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 00:17:13 +0000 (09:17 +0900)]
[Pure ACL Runtime] Support Fully Connected (#731)

This commit partially implements ANEURALNETWORKS_FULLY_CONNECTED operation
in pure ACL Runtime to allow pure ACL runtime to execute inceptoin v3
non-slim model.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoBuild fix on nnfw_support_nnapi by adding -fPIC (#714)
이춘석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 17 Apr 2018 00:14:52 +0000 (09:14 +0900)]
Build fix on nnfw_support_nnapi by adding -fPIC (#714)

This is required to enable test coverage build.
During building with `-fprofile-arcs -ftest-coverage`, build fails as
follows:
libnnfw_support_nnapi.a(Utils.o): relocation R_ARM_THM_MOVW_ABS_NC against `a local symbol' can not be used when making a shared object; recompile with -fPIC

Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
6 years ago[NNAPI Random Test] Add 'fully_connected_1' test (#720)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 07:47:03 +0000 (16:47 +0900)]
[NNAPI Random Test] Add 'fully_connected_1' test (#720)

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

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL Runtime] Support Softmax (#726)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 07:45:07 +0000 (16:45 +0900)]
[Pure ACL Runtime] Support Softmax (#726)

This commit implements 'softmax' operation support in Pure ACL Runtime.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agocontrib: add the top-level CMakeLists and example (#722)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 07:23:44 +0000 (16:23 +0900)]
contrib: add the top-level CMakeLists and example (#722)

For issue #680

This commit adds an example for the contrib directory as well as the
top-level CMakeLists.txt.

The files were copied from STAR/nncc/contrib and modified.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
6 years agoPrint result of framework test on test_driver.sh (#708)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 16 Apr 2018 07:15:25 +0000 (16:15 +0900)]
Print result of framework test on test_driver.sh (#708)

Prints framework_test.tap which is the result of framework test by
run_tests.sh.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
6 years ago[NNOP] Introduce VectorInputAccessor (#717)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 07:14:39 +0000 (16:14 +0900)]
[NNOP] Introduce VectorInputAccessor (#717)

this commit introduces VectorInputAccessor to get input for FC-FC.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoAdd benchmark test to test_driver.sh (#648)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 16 Apr 2018 07:05:40 +0000 (16:05 +0900)]
Add benchmark test to test_driver.sh (#648)

* Add benchmark test to test_driver.sh

Enables running tflite_benchmark in test_driver.sh. To do
tflite_benchmark, test_driver.sh needs --benchmark option.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
* Fix export statement and echo messages

6 years agoAdd a testcase of pooling with Activation RELU (#696)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 06:39:56 +0000 (15:39 +0900)]
Add a testcase of pooling with Activation RELU (#696)

* Add pooling testcases with RELU

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* changed location because of "Insufficient Padding!" error
-Actually, I don't know why this error happens.
-After I changed the position, it works without error.

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
* Insert negative integers to input data in RELU cases.
Initialize input data with TensorWrapper

Signed-off-by: SungJin Choi <lotieye.choi@samsung.com>
6 years ago[Pure ACL] Partially Support Reshape Operation (#709)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 06:16:00 +0000 (15:16 +0900)]
[Pure ACL] Partially Support Reshape Operation (#709)

This commit implements partial support over reshape operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoApply build type to ACL scons build (#701)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 06:15:22 +0000 (15:15 +0900)]
Apply build type to ACL scons build (#701)

This will apply debug or release type to ACL scons build

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoCreate a contrib directory and add README (#702)
서상민/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 06:13:23 +0000 (15:13 +0900)]
Create a contrib directory and add README (#702)

For issue #680

This patch creates a contrib directory and adds README.md that describes
the purpose of the contrib directory.

Signed-off-by: Sangmin Seo <sangmin7.seo@samsung.com>
6 years ago[NNOP] Introduce NEON Reshape layer (#705)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 05:35:35 +0000 (14:35 +0900)]
[NNOP] Introduce NEON Reshape layer (#705)

This commit introduces a reshape layer using NEON and its unittest.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[NNOP] Add more unit tests for FC (#703)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 05:35:23 +0000 (14:35 +0900)]
[NNOP] Add more unit tests for FC (#703)

This commit inserts two additional unittests for FC
- conv_fc
- inceptionv3

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years ago[Pure ACL Runtime] Set Stride before setting padding (#700)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 05:35:07 +0000 (14:35 +0900)]
[Pure ACL Runtime] Set Stride before setting padding (#700)

ANEURALNETWORKS_PADDING_SAME algorithm uses stride values when computing
padding values, but Conv2D implementation has a bug that compute padding
size using uninitialized stride values.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoTizen gbs build TestGenerated from Android NN test (#678)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 04:29:44 +0000 (13:29 +0900)]
Tizen gbs build TestGenerated from Android NN test (#678)

Tizen gbs uses g++-6.2, which had been applied with most g++-6.3.
In case of tizen gbs build, g++-6.2 would be ok.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years agog++-6.3 can build TestGenerated from Android NN test (#676)
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 04:29:11 +0000 (13:29 +0900)]
g++-6.3 can build TestGenerated from Android NN test (#676)

Currently g++ 6.3 is not permitted to compile TestGenerated.
The condition is fixed so that g++ 6.3 can try to build.

Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
6 years ago[NNOP] Process various dimensions of weights and ouput for FC (#687)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 04:27:35 +0000 (13:27 +0900)]
[NNOP] Process various dimensions of weights and ouput for FC (#687)

This commit improves processing various dimensions of weights and output for
FC. The fully connected layer's weight and output can have various
dimensions. There can be more dimensions to be supported, but for now,
we support as below:
- 4D or 2D for weights
- 4D or 1D for outputs

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoAdd Softmax in NEON (#691)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 04:15:43 +0000 (13:15 +0900)]
Add Softmax in NEON (#691)

This will add Softmax operator with ACL/NEON backend

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoSubstitue run_tests.sh to test_driver.sh for make check (#669)
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 16 Apr 2018 03:51:12 +0000 (12:51 +0900)]
Substitue run_tests.sh to test_driver.sh for make check (#669)

Substitue run_tests.sh to test_driver.sh for make check.

Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
6 years ago[Pure ACL Runtime] Support 'Concat' operation (#693)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 03:35:59 +0000 (12:35 +0900)]
[Pure ACL Runtime] Support 'Concat' operation (#693)

This commit introduces partial support on ANEURALNETWORKS_CONCATENATION
operation.

Only feature map concat over depth axis is supported currently.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoModel parser: new operators by toco (#684)
오형석/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 02:27:29 +0000 (11:27 +0900)]
Model parser: new operators by toco (#684)

Parse new operators generated by toco in tensroflow 1.7

Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
6 years agoFix softmax xls formula (#688)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 02:16:59 +0000 (11:16 +0900)]
Fix softmax xls formula (#688)

This will fix and simplify softmax formula in xls
to e ^ x / sum(e ^ x)

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoSeparate Conv2D neon implementation (#686)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 01:58:25 +0000 (10:58 +0900)]
Separate Conv2D neon implementation (#686)

This will move Conv2D neon implementation to separate module
- also with the test

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoUse hybrid epsilon comparison on test (#685)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 01:30:14 +0000 (10:30 +0900)]
Use hybrid epsilon comparison on test (#685)

This commit revises random testing framework to use hybrid epsilon
comparision (check realtive diff only when absolute diff is larger than
0.001).

This commit also revises testing framework to show some useful
information for analyizing failures.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUpdate cross build script (#675)
최형규/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 01:30:03 +0000 (10:30 +0900)]
Update cross build script (#675)

- Find common.sh correctly using SCRIPT_ROOT

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
6 years ago[Pure ACL Rumtime] Support AvgPool2D op execution (#683)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 01:14:34 +0000 (10:14 +0900)]
[Pure ACL Rumtime] Support AvgPool2D op execution (#683)

This commit implements AvgPool2D planner, which allows us to run
'avgpool_test1.tflite' testcase with Pure ACL NN runtime.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[Pure ACL Runtime] Set Padding for Conv2D op (#681)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 01:14:01 +0000 (10:14 +0900)]
[Pure ACL Runtime] Set Padding for Conv2D op (#681)

This commit revises Conv2D op planner to set padding similarly as in
MaxPool2D op.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[NNAPI Random Tests] Add 'reshape_1' test (#679)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 01:09:38 +0000 (10:09 +0900)]
[NNAPI Random Tests] Add 'reshape_1' test (#679)

* [NNAPI Random Tests] Add 'reshape_1' test

This commit adds 'reshape_1' test which allows us to test reshape
operation with random data.

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

6 years agoRemove Flag and use global util IntAccessor (#682)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 00:57:49 +0000 (09:57 +0900)]
Remove Flag and use global util IntAccessor (#682)

This will remove local Flag and use global IntAccessor to check CONV2D_VERBOSE flag

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years ago[NNOP unittest] Use TensorWrapper for FC (#651)
김정현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 16 Apr 2018 00:57:19 +0000 (09:57 +0900)]
[NNOP unittest] Use TensorWrapper for FC (#651)

Use TensorWrapper for FC unit tests instead of directly access primitives.

Signed-off-by: Junghyun Kim <jh0822.kim@samsung.com>
6 years agoMove unused code for Conv2D (#677)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Apr 2018 00:15:46 +0000 (09:15 +0900)]
Move unused code for Conv2D (#677)

This will remove and move unused code from Conv2D using ACL kernel

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