이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 5 Sep 2018 01:02:28 +0000 (10:02 +0900)]
[neurun] Specialize `std::hash` for Index class (#2585)
(partially) Specialize `std::hash` for `graph::Index` class.
This will enable having Index as the key in "std::unordered_.."
containers.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 00:59:23 +0000 (09:59 +0900)]
[Model Parser] Update flatbuffers path (#2579)
Update flatbuffers path to use flatbuffer python library
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 23:31:21 +0000 (08:31 +0900)]
Catch exception in nnapi test (#2581)
Catch exception in nnapi test to avoid warning
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 09:51:49 +0000 (18:51 +0900)]
Use unique pointer for ANeuralNetworksMemory (#2578)
Use unique pointer for ANeuralNetworksMemory to avoid memory leak warning
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 08:39:09 +0000 (17:39 +0900)]
[neurun] Change path for wrapping structure (#2571)
Change path for NeuralNetworks.h's wrapping structure
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 08:16:54 +0000 (17:16 +0900)]
Coverity cross build & analyze script (#2560)
Coverity cross build & analyze script for daily coverity report
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Removing GeneratedTests.pad from the skiplist (#2574)
As #2097 is merged, this commit removes GeneratedTests.pad from the skiplist.
Signed-off-by: Siva Sai <siva.sai@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 4 Sep 2018 06:03:23 +0000 (15:03 +0900)]
[neurun] Do BackendResolver in lowering (#2563)
* [neurun] Do BackendResolver in lowering
This commit moves doing BackendResolver into lowring in graph.
- TensorBuilder doesn't get Plan in constructor anymore.
- LowerInfo includes Backend class not backend string.
- BackendResolver returns only Backend class.
Signed-off-by: sjsujinkim sjsujin.kim@samsung.com
* Change backend() to getBackend()
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 04:54:21 +0000 (13:54 +0900)]
Initialize members in DiffSummary constructor (#2568)
Initialize members in DiffSummary constructor to avoid warning
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 04:54:08 +0000 (13:54 +0900)]
[neurun] Define default value in constructor (#2567)
Define default value in constructor for kernel
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 4 Sep 2018 04:07:38 +0000 (13:07 +0900)]
[neurun] Enhance DFS implementation (#2561)
Now that we have operand def/use info, we can do DFS efficiently.
This is applied to PostDfsIterator. This might also be applied to
DAGVerifier, but operand def/use info is built when Graph building is
finished.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 4 Sep 2018 03:56:43 +0000 (12:56 +0900)]
[neurun] Use MockNode.h in Insert test (#2565)
This commit uses `MockNode.h` in Insert test.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
nnfw Adding SquaredDifferenceEx in NeuralNetworksEx.h (#2555)
This patch adds '''ANEURALNETWORKS_SQUARED_DIFFERENCE_EX''' in the ''' NeuralNetworksEx.h'''
Signed-off-by: prasannar <prasanna.r@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 3 Sep 2018 11:28:37 +0000 (20:28 +0900)]
[neurun] Use forward declaration from a header (#2557)
Forward declare for the interfaces that are used from
`BackendManger.h`.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 3 Sep 2018 11:04:30 +0000 (20:04 +0900)]
[neurun] Use forward decl from Node (#2558)
Forward declare `LowerInfo` from `operation::Node` to reduce
dependencies.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 10:34:13 +0000 (19:34 +0900)]
[neurun] Change check condition for addOperation & addOperationEx (#2551)
Change check condition for addOperation & addOperationEx to same with pacl
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Enabling PAD operation in NNAPI (#2097)
This commit enables PAD operation in pure_arm_compute runtime
Signed-off-by: Siva Sai <siva.sai@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 3 Sep 2018 07:10:56 +0000 (16:10 +0900)]
[neurun] Range-based loop for operand::IndexSet (#2554)
Support and apply range-based loop for operand::IndexSet and remove
`list()` method.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 3 Sep 2018 05:44:29 +0000 (14:44 +0900)]
[neurun] Move CLSchedule default init to BackendManager (#2526)
* [neurun] Move CLSchedule default init to BackendManager
This commit moves CLSchedule default init to BackendManager, since it is ACL_CL specific code.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
* Extract backend initializer
* Add eol
* Remove unnecessary variable
* Remove unused include
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 05:42:36 +0000 (14:42 +0900)]
Change check condition for addOperationEx (#2550)
Change check condition for addOperationEx to same with addOperation
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
윤현식/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 3 Sep 2018 05:04:43 +0000 (14:04 +0900)]
[tool] OpenCL info (#2549)
This tool shows information from OpenCL : info of paltform, context and devices.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 04:44:17 +0000 (13:44 +0900)]
[neurun] Return nullptr for NOP stage generator (#2553)
Return nullptr for NOP stage generator
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 04:43:18 +0000 (13:43 +0900)]
[neurun] Comment out unreachable code (#2552)
Comment out unreachable code in cpu kernel to avoid svace warning
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 02:31:00 +0000 (11:31 +0900)]
[neurun] Update use-def init test (#2545)
Use SimpleMockNode in header
Remove unused namespace alias
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 3 Sep 2018 01:11:37 +0000 (10:11 +0900)]
[neurun] Make initializeUseDef less verbose (#2546)
Make `Graph::initializeUseDef` implementation less verbose via using
directly a lambda function.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 08:29:17 +0000 (17:29 +0900)]
[neurun] Introduce DefaultIterator (#2535)
Introduce a default iterator that just iterates in the order of
`operation::Set::iterate` method.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 08:28:44 +0000 (17:28 +0900)]
Add memcpy() version of generic TensorSource for 3D tensor (#2477)
This commit adds memcpy() version of generic TensorSource for 3D tensor.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 08:22:05 +0000 (17:22 +0900)]
Add a default param to asTensorShape() to apply conditionally (#2464)
This commit add a default param to asTensorShape() to apply conditionally dimension coorection.
In some cases, in incorrect dimensions is required.
For example, intput_size is 1 in LSTM. The input-to-input weights([num_units, input_size]) of LSTM is used as the weight of the FullyConnected.
The FullyConnected's weight must be greater or equal than 2-dimensions.
However, if the dimension correction is applied to input_to_input_weights with input_size equal to 1, it will be changed to 1-D.
So input_to_input_weights is not used by the weight of FullyConnected.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 31 Aug 2018 07:34:09 +0000 (16:34 +0900)]
[neurun] Initialize use & def information (#2543)
Initialize use & def information in model finishing phase
Add test code to check initialized use&def information
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 06:54:50 +0000 (15:54 +0900)]
Add sourcing tensor more than 5 dimensions (#2529)
This commit adds sourcing tensor more than 5 dimensions.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 06:51:43 +0000 (15:51 +0900)]
[neurun] Introduce SimpleMockNode for Graph test (#2536)
Introduce SimpleMockNode as a header file so it can be reused from
many tests.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 31 Aug 2018 06:21:49 +0000 (15:21 +0900)]
[neurun] Define use & def in operand (#2541)
- Define use & def in operand
- Define base methods to append & remove
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 31 Aug 2018 03:55:34 +0000 (12:55 +0900)]
Add assertion in ToARMCompute function (#2540)
This commit prevents a segfault from wrong access.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 22:23:31 +0000 (07:23 +0900)]
Unify to use one function of asTensorShape() and asTensorInfo() (#2471)
* Unify to use one function of asTensorShape() and asTensorInfo()
This commit unifies to use one function(no overloading) of asTensorShape() and asTensorInfo().
- Export asTensorShape() out of asTensorInfo() to apply conditionally dimension correction.
- Unify to use one function to eliminate unnecessary complexity.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
* Remove unused overloading functions
This commit remove unused overloading functions.
- asTensorInfo()
- asTensorShape()
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 09:47:46 +0000 (18:47 +0900)]
Update tensorflow register file (#2531)
These operators are supported by Tensorflow v1.9.0
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 30 Aug 2018 08:13:18 +0000 (17:13 +0900)]
Return nullptr for InitRSQRT (#2533)
Return nullptr for InitRSQRT to avoid svace warning
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 08:12:57 +0000 (17:12 +0900)]
[neurun] Remove remain common tensor codes (#2528)
This commit removes remain common tensor codes.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 08:12:41 +0000 (17:12 +0900)]
[neurun] Move Op.lst to graph/operation (#2530)
Move the file Op.lst to graph/operation from internal/op.
Now we no longer have any files in internal/op.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 30 Aug 2018 08:12:03 +0000 (17:12 +0900)]
[neurun] Define operation index list (#2532)
Define operation index list (used for use-def)
Use list to support frequent append & remove
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 07:51:27 +0000 (16:51 +0900)]
[neurun] Enable compile option Wall/Wextra/Werror (#2517)
To keep our code clean, let us introduce those compile options.
- Wall : Enable most(not exactly all) of compiler warnings
- Wextra : Enable extra compiler warnings
- Werror : Treat warnings as error
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 30 Aug 2018 07:02:30 +0000 (16:02 +0900)]
[neurun] Move internal/operand to graph/operand (#2520)
Move internal/operand to graph/operand
Change namespace neurun::internal::operand to neurun::graph::operand
Remove internal/operand
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 06:58:58 +0000 (15:58 +0900)]
Remove all fc tests of generated tests from skiplist (#2527)
- V1_0/fully_connected_float_1_nnfw
- V1_0/fully_connected_quant8_2
- V1_1/fully_connected_float_4d_simple
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 05:00:04 +0000 (14:00 +0900)]
Introduce GenericFullyConnectedLayer for fc (#2525)
4d fc tests of GeneratedTests are failed because runtimes can't
guess 4d input to 2d so far. This GenericFullyConnectedLayer handles the
case.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 01:41:31 +0000 (10:41 +0900)]
Enable concat-related generatedTests (#2523)
All concat generatedTests work normally after merging #2494
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 30 Aug 2018 01:02:46 +0000 (10:02 +0900)]
[neurun] Remove internal::op nodes (#2519)
Remove Nodes in the namespace internal::op and some classes related to
those nodes.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 09:01:43 +0000 (18:01 +0900)]
[neurun] Fix build break (#2521)
Fix build break which is due to invalid shape_index of Reshape
operation.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 07:55:21 +0000 (16:55 +0900)]
[neurun] Remove TensorMarker (#2515)
Now that we have interface `getInputs()` and `getOutputs()` in
operation Node, we do not need to implement TensorMarker for each
Node.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 07:54:03 +0000 (16:54 +0900)]
[neurun] Fix Reshape operation (#2516)
shape_index is a tensor paramenter so it should be one of the inputs.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 29 Aug 2018 07:49:46 +0000 (16:49 +0900)]
Update runtime build in Makefile (#2518)
Update runtime build in Makefile to build neurun with purecl
It will be used for svace
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 07:37:42 +0000 (16:37 +0900)]
Support the broadcast of all cases (#2511)
* Support the broadcast of all cases
This commit supports the broadcast of all case.
- Add Extending the rank of operand.
- Apply the bradcast to the arithmetic operations.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
* Remove unnecessary residual codes related to the broadcast
This commit removes unnecessary residual codes related to the broadcast.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 07:12:17 +0000 (16:12 +0900)]
Support CONCAT for all dimensions and all axes (#2494)
This commit is similar with SPLIT implementation.
In order to avoid unnecessary copy around data,
it uses shared memory information.
It does not u se separate ACL function like SPLIT.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
nnfw: RSQRT nnapi delegate and Custom ops addition. (#2472)
* nnfw: RSQRT nnapi delegate and Custom ops addition.
These patch adds changes for RSQRT in nnapi_delegate
and also adds related CustomOps changes.
RSQRT kernel has been added.
Signed-off-by: Tanuj Tekriwal <tanuj.tekri@samsung.com>
* nnfw: Add pure_arm_compute layer for RSQRT
This patch adds the pure_arm_compute layer for RSQRT.
Related ACL changes to be added in different patch.
Signed-off-by: Tanuj Tekriwal <tanuj.tekri@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 05:41:05 +0000 (14:41 +0900)]
[neurun] Update Dumper class (#2513)
As we have unified graph operation nodes, this commit updates class
`Dumper` accordingly.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 02:29:59 +0000 (11:29 +0900)]
Add an initializer for 3D tensor (#2487)
This commit adds initializer for 3D tensor.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 02:16:27 +0000 (11:16 +0900)]
Enable to check state of compilation in pureacl (#2439)
This commit will enable to check if compilation is finished or not
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 01:45:03 +0000 (10:45 +0900)]
[neurun] Merge graph node classes (#2497)
Merge Old Node into New Node.
Old Node : `internal::tflite::op::Node`
New Node : `neurun::graph::operation::Node`
- struct `Param` for each Node holds non-tensor parameters only
- Tensor parameters are stored in `_inputs` and `_outputs`
- Provide a default implementation of get/setters for inputs and
outputs of `Node`
- `NodeVisitors` are now for New Node, not Old Node
- class `Linear` now holds New Node rather than Old Node
This commit completes the draft commit #2479, with #2483 and #2486
which were already merged.
Resolve #2404
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 01:44:28 +0000 (10:44 +0900)]
[neurun] Move CPU Tensor implementation to backend (#2509)
Move `internal/cpu.{h|cc}` to cpu backend directory.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 01:33:33 +0000 (10:33 +0900)]
Fix axis calculation of TensorSource from reversing to using ToARMComputeAxis (#2481)
This commit Fix axis calculation of TensorSource from reversing to using ToARMComputeAxis.
Supported tensor rank of TensorSource:
1D ~ 3D : reversing
more than 4D : ...NHWC -> WHCN...
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 01:31:11 +0000 (10:31 +0900)]
Update arm ComputeLibrary version (#2508)
Update ComputeLibrary to rebased version instead of merged one.
Note that this has zero diff, but removed merge commit.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Wed, 29 Aug 2018 00:49:48 +0000 (09:49 +0900)]
[neurun] Add insertOperation in graph (#2424)
* [neurun] Add insertOperation in graph
This commit adds insertOperation which inserts between 2 operations in graph.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
* some change test operand
* remove unused declaration
* get a pair of operand and operation index as parameter
* Add todo comment into insertOperation
* Change pair to seperate params
* Revise insertion test
* fix format
* Remove unused utility include
* rebase
* Change test comment
* Remove test header
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 10:34:36 +0000 (19:34 +0900)]
Prepare reshaping input(rank-4) into rank-2 on fc (#2505)
When input which has rank 4 as fc's input comes, it needs to be reshaped
into rank 2. This commit prepares the task by skeleton code and checking
input_size, output_size and batch_size
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 28 Aug 2018 09:47:04 +0000 (18:47 +0900)]
Change submodule tensorflow (#2504)
tensorflow/nnfw1.9 branch has force-pushed. This commit changes tensorflow submodule hash.
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 08:42:47 +0000 (17:42 +0900)]
[neurun] Use `Index::value()` for `operation::Set` (#2499)
Use `Index::value()` method rather than `asInt()`. Note that `asInt()`
returns int32_t, `value()` return uint32_t.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 06:41:03 +0000 (15:41 +0900)]
Fix to check operands in detail (#2374)
Validation of scale and zeroPoint would be skipped for a while.
We do not know whether scalar type can have scale and zeroPoint.
To pass ValidationTest and GeneratedTest, this validation code would not be implemented until we can define this issue clearly.
Except that, this commit will enable check operands in detail
- Add checking scale and zeropoint in `quant8` type
- Add checking dimensionCount for scalars
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 05:55:34 +0000 (14:55 +0900)]
Fix setting TensorInfo to wrong shape in FullyConnected. (#2496)
This commit fixes setting TensorInfo to wrong shape in FullyConnected.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 28 Aug 2018 02:18:18 +0000 (11:18 +0900)]
Update skiplist for linux and tizen (#2466)
1. update skiplist on c0860ad
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 02:17:54 +0000 (11:17 +0900)]
Remove unnecessary a condition. (#2476)
This commit removes unnecessary a condition.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 01:30:03 +0000 (10:30 +0900)]
Reduce unnecessary casting from template class for data (#2473)
This commit reduces unnecessary casting from template class for data.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 01:02:20 +0000 (10:02 +0900)]
[neurun] Rename operation get/setter for in/output (#2486)
Rename operation for operation input/output's getter and setter
- `val inputs()` to `getInputs`
- `void inputs(val)` to `setInputs`
- `val outputs()` to `getOutputs`
- `void outputs(val)` to `setOutputs`
If there is multiple methods with same name, and one of them is
overriden, the compiler cannot find the other methods. For more,
please refer to https://stackoverflow.com/questions/
15451020/can-i-override-only-one-method-in-inheritence
For the actual usage of our case, please refer to #2479.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Tue, 28 Aug 2018 00:54:33 +0000 (09:54 +0900)]
[neurun] NodeVisitor argument as rvalue ref (#2483)
Edit `graph::operation::Node::accept` method to accept rvalue
reference instead of lvalue reference.
Find the usage from #2479.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 11:00:36 +0000 (20:00 +0900)]
[neurun] Remove verbose template param from Index (#2484)
Remove unnecessary template parameter from class `Index`.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 09:28:09 +0000 (18:28 +0900)]
Implement Split operator (#2448)
* Implement Split operator
Split operator is implemented using CLSubTensor.
In order to avoid unnecessary copy around data,
it uses shared memroy information.
It does not use separate ACL function.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Handle negative axis case on Split operator
This commit handles a negative axis case on Split operator.
If the axis is negative, it updates the axis value by input tensor's rank.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Remove default parameter of derived class
To avoid setting different default parameters between parent and derived class,
this commit removes the default paramter of derived class.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
장지섭/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 09:27:41 +0000 (18:27 +0900)]
Fix a typo of comment in Swizzle.h (#2485)
This commit fixes a typo of comment in Swizzle.h
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 04:51:38 +0000 (13:51 +0900)]
Enable to pass ValidationTestModel.CreateCompilation in pureacl (#2474)
If building model is not finished, compilation cannot be created
- Add checking if building model is finished or not
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 04:24:45 +0000 (13:24 +0900)]
[neurun] Add runtime error for no tested quant8 cpu kernels (#2475)
This commit adds runtime error for no tested quant8 cpu kernels.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 02:39:44 +0000 (11:39 +0900)]
[neurun] Enable convolution quant8 for cpu (#2434)
This commit enables convolution quant8 for cpu.
Just copied from android NN codes using tflite like any other cpu kernels.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 02:15:52 +0000 (11:15 +0900)]
[neurun] Change data structure of Set to map (#2417)
* [neurun] Change data structure of Set to map
This commit changes data structure of `Set` to map for more efficient graph manipulation.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
* Change maximum bound of index count
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Mon, 27 Aug 2018 01:43:20 +0000 (10:43 +0900)]
Modify topkV2 testdata and rename test name (#2425)
`GeneratedTests.topk_v2_1D_uint8` and `GeneratedTests.topk_v2_2D_uint8` are tests for `topkV2` operation using quant8 type
However, despite not correctly given test data format, two tests are passed because of weak dataset
- Modify `_uint8` to `_quant8` in test name
- Modify test data information of quant8 for `GeneratedTests.topk_v2_1D_uint8` and `GeneratedTests.topk_v2_2D_uint8`
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 27 Aug 2018 01:34:59 +0000 (10:34 +0900)]
Enable explicit Conv2D on pureacl NEON runtime (#2470)
- Enable explicit Conv2D on pureacl NEON runtime
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 27 Aug 2018 01:34:13 +0000 (10:34 +0900)]
[neurun] Remove type info in shape (#2444)
* [neurun] Remove type info in shape
Remove type info and API in shape
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Remove out-dated comments
Transpose op for spatial dimensions (height-width) (#2371)
* Transpose op for spatial dimensions (height-width)
Implemented transpose applicable along height-width axis
This is a specific permutation corresponding to vector [0,2,1,3]
Generic transposition requires CL permute which may be slower
Next patch will have generic transpose with permute.
Signed-off-by: Vishal Keshav <vishal.k1@samsung.com>
* Updated compilation with comments and TODO
Added comments and TODO
Signed-off-by: Vishal Keshav <vishal.k1@samsung.com>
이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 09:06:06 +0000 (18:06 +0900)]
Enable Explicit MaxPool2d on pureacl NEON runtime (#2468)
- Enable Explicit MaxPool2d on pureacl NEON runtime
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
이춘석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 09:05:57 +0000 (18:05 +0900)]
Enable Explicit Avgpool2d on pureacl NEON runtime (#2469)
- Enable Explicit Avgpool2d on pureacl NEON runtime
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 07:03:47 +0000 (16:03 +0900)]
Enable GeneratedTests.logistic_quant8_* tests (#2419)
Remove below testcases in skip list:
GeneratedTests.logistic_quant8_1
GeneratedTests.logistic_quant8_2
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 07:00:05 +0000 (16:00 +0900)]
Add nnapi delegation of Split (#2462)
Add nnapi delegation of Split
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 03:46:10 +0000 (12:46 +0900)]
[neurun] Introduce contains in IndexSet (#2457)
This commit introduces contains helper in IndexSet for checking if index of operand is exist.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 02:30:13 +0000 (11:30 +0900)]
Add nnapi_quickcheck for split operator (multi-dimension) (#2449)
Add below testcases for split operator:
NNAPI_Quickcheck_split_2.simple_test (4 rank, 2 axis)
NNAPI_Quickcheck_split_3.simple_test (2 rank, 1 axis)
NNAPI_Quickcheck_split_4.simple_test (2 rank, 0 axis)
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 02:29:01 +0000 (11:29 +0900)]
Enable to pass ValidationTestModel.Finish in pureacl (#2454)
- Add checking if building model is finished or not
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 02:28:46 +0000 (11:28 +0900)]
Enable to pass ValidationTestModel.AddOperation in pureacl (#2451)
In `ValidationTestModel.AddOperation`, if inputs or outputs are `nullptr`, it is always error even if `inputCount` and `outputCount` is zero.
This commit will modify those conditions, and add some checkings to pass the test.
- Modify `nullptr` check condition
- Add checking if building model is finished or not
- Add checking if type is invalid or not
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 02:27:54 +0000 (11:27 +0900)]
Enable to pass ValidationTestModel.identifyInputsAndOutputs in pureacl (#2452)
- Add checking if building model is finished or not
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
윤지영/동작제어Lab(SR)/Engineer/삼성전자 [Fri, 24 Aug 2018 02:24:49 +0000 (11:24 +0900)]
Introduce Split operation into pureACL runtime (#2447)
* Introduce Split operation into pureACL runtime
This commit introduces Split operation into pureACL runtime.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Remove num_split_index of Split operator
The `num_split_index` is always the same with the number of output.
So it can be omitted.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 23 Aug 2018 10:54:30 +0000 (19:54 +0900)]
Revert "Add comment for skipping fully_connected_quant8_2 of GeneratedTests (#2426)" (#2443)
This reverts commit
3e32b4fda06ec739eeb078ee2b1dc7f86b616cc6.
According to V1_1's fully_connected_float_4d_simple's comment, this test
is not wrong. The shape can be guessed by output. The test is not wrong,
so this revert is needed.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
남궁석/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 23 Aug 2018 10:43:18 +0000 (19:43 +0900)]
Update model.cpp of depthwise_conv2d (#2441)
By #2300, `depthwise_conv2d_float_large_2_weights_as_inputs` was modified
But it was not the result of `generate_test.sh`, it was my own modification
This commit will apply the result of `generate_test.sh`
Signed-off-by: Seok NamKoong <sk.namkoong@samsung.com>
이상규/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 23 Aug 2018 10:42:55 +0000 (19:42 +0900)]
PureACL handles operators that generate no kernel (e.g. CONCATENATION) (#2437)
Related Issue: #2431
Dummy stage instance is added for `CONCATENATION` because Profiler assumes
every op inserts a stage.
The output will not show `CONCATENATION` slot because it is based on
runtime execution event. There was no event for `CONCATENATION` at runtime.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 08:33:25 +0000 (17:33 +0900)]
[neurun] Change internal datatype enum name (#2435)
Change enum name used for neurun internal data type
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김수진/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 23 Aug 2018 06:31:19 +0000 (15:31 +0900)]
[neurun] Use correct scale for Softmax (#2433)
This commit uses correct scale for Softmax likes #1728.
Signed-off-by: sjsujinkim <sjsujin.kim@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 06:09:57 +0000 (15:09 +0900)]
[neurun] Use internal data type in CPU backend (#2432)
Define convert function to make CPU backend shape from graph operand
Use internal data type to make backend shape
Change CPU backend interface to use backend shape instead of graph shape
Change CPU backend operation to save input data type
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 23 Aug 2018 05:17:49 +0000 (14:17 +0900)]
Pass initing weight and bias on compilation time if data is null (#2427)
Fc's weight and bias can be passed on execution time not only model time.
these generated tests can be fixed as workaround method.
- fully_connected_quant8_weights_as_inputs
- fully_connected_quant8_large_weights_as_inputs
This should be fixed structurally on neuron runtime.
Ref: https://github.sec.samsung.net/STAR/nnfw/issues/2319
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/동작제어Lab(SR)/Engineer/삼성전자 [Thu, 23 Aug 2018 05:17:31 +0000 (14:17 +0900)]
Add comment for skipping fully_connected_quant8_2 of GeneratedTests (#2426)
Add comment for the reason why skip fully_connected_quant8_2 of
GeneratedTests. It's because the GeneratedTests.fully_connected_quant8_2
code is wrong. Skip this test as is if the test code is not fixed.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
오형석/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 04:56:25 +0000 (13:56 +0900)]
[neurun] Use internal data type in cpu InitializeGenerator (#2428)
Define getter for internal data type
Use internal data type in cpu InitializeGenerator instead of shape
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>