박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 11 Dec 2018 00:16:56 +0000 (09:16 +0900)]
[coco] Create BHWC FeatureLayout with FeatureShape (#2593)
This change allows users to create a BHWC FeatureLayout with non-singular
batch dimension.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 11 Dec 2018 00:16:45 +0000 (09:16 +0900)]
[enco] frontend/caffe: remove unused header includes (#2600)
* [enco] frontend/caffe: remove unused header includes
This will remove unused header files in Frontend.cpp
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* remove one more
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 11 Dec 2018 00:16:06 +0000 (09:16 +0900)]
[nnkit] Remove nni (#2601)
This commit removes deprecated nni project.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 10 Dec 2018 23:08:48 +0000 (02:08 +0300)]
[enco] Fixed build error (#2597)
Fixed error: "no template named 'function' in namespace 'std'"
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Support 'transpose' parameter of InnerProduct layer (#2598)
Add support for 'transpose' parameter of InnerProduct layer.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Add arm-c++ target (#2515)
Adds new target option to make possible split of arm and x86 artifact generation in cpu c++ backend
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 18:34:03 +0000 (03:34 +0900)]
[nnc] Use nnkit-run for test (#2585)
Now, infer_testcase.py script will invoke nnkit-run instead of
deprecated nni.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
update Unit Test Report for completion DR (#2596)
* add test round 3 including results of unit tests for ACL C++ code generator
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
update STD and SDD for completion DR (#2595)
This is a patch from Alexey Kondrashov.
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
update SW Development Document for completion DR (#2571)
* update SW Development Document for completion DR
* add report of ProtexIP
* add report of SVACE
* add code metrics result
* correct System Test document for completion DR
* add mention about coding style document
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 08:57:41 +0000 (17:57 +0900)]
[coco] Declare coco-internal FeatureShape class (#2591)
This commit declares coco-internal FeatureShape class with "batch"
method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 08:15:42 +0000 (17:15 +0900)]
[coco] Remove deprecated FeatureObject::at method (#2590)
"at" method in FeatureObject was introduced when FeatureObject is
responsible to layout management, but this method is no longer used.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤현식/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 08:04:22 +0000 (17:04 +0900)]
[enco/tfl/frontend] Remove tensor copying code (#2559)
Frontend now copies tensor copy after building IR. Duplicate code is removed from GraphBuilder.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 08:02:51 +0000 (17:02 +0900)]
[coco] Remove deprecated FeatureObject constructor (#2588)
This commit removes deprecated FeatureObject constructor with
FeatureShape.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 08:02:45 +0000 (17:02 +0900)]
[enco] frontend/caffe: move loop invariant context (#2589)
This will move loop invariant opbuilder_context variable outside of the for loop
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 08:02:11 +0000 (17:02 +0900)]
[enco] frontend/caffe: fix header guard directive (#2587)
This will fix input layer header guard with correct directive
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 06:44:00 +0000 (15:44 +0900)]
[enco] caffe/frontend: const ref for layer name (#2584)
This will make to use const reference for std::string type layer name for lookup method
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 06:43:29 +0000 (15:43 +0900)]
[nnkit] Update README.md with nnkit-run (#2581)
This commit replaces all the reference of deprecated "nni" in README.md
with "nnkit-run".
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 06:34:27 +0000 (15:34 +0900)]
[enco] caffe/frontend: rename Op to Layer (#2582)
This will rename "Op" to "Layer" for folder name and lookup parameter
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 06:33:33 +0000 (15:33 +0900)]
[enco/tfl] Use NONE when setting activation (#2583)
This commit rewrites Concat_000 test recipe to use "NONE" instead of
explicit integer (0) to make it easy to understand.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 06:30:17 +0000 (15:30 +0900)]
[enco/tfl] Support concat along feature height/width (#2579)
* [enco/tfl] Support concat along feature height/width
This commit rewrites enco tflite frontend to support feature map
concatenation along height/width dimensions.
This commit also includes related tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use NONE instead of 0
* Fix a typo (compuate -> compute)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 06:15:28 +0000 (15:15 +0900)]
[enco] frontend/caffe: separate scale (#2580)
This will move Scale layer handler to separate file
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 06:00:48 +0000 (15:00 +0900)]
[enco] Use nnkit-run instead of nni for test (#2576)
This commit replaces all the use of nni with nnkit-run in enco test
framework.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Dec 2018 03:26:11 +0000 (12:26 +0900)]
[enco] Lower ConcatF to Shuffle (#2575)
This commit revises enco to lower ConcatF as Shuffle if is not yet delegated
to Android NN.
Note that the current implementation of "Intrinsic Selection" delegates
ConcatF to Android NN only when ConcatF is depth-wise.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 10 Dec 2018 02:25:34 +0000 (11:25 +0900)]
[enco] frontend/caffe: separate eltwise (#2574)
This will move Eltwise(ElementWise) layer handler to separate file
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Sun, 9 Dec 2018 23:59:00 +0000 (08:59 +0900)]
[enco] frontend/caffe: separate concat (#2567)
This will move Concatenation layer handler to separate file
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Sun, 9 Dec 2018 23:58:51 +0000 (08:58 +0900)]
[tfldump] Rename file DumpOp to OpPrinter (#2566)
This will rename DumpOp header and source file to OpPrinter
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
[nnc] Add acl backend tests for ops in mobilenet and inception (#2570)
Added tests for operations:
- scale
- bias
- concat
- reshape
- dropout
- conv2d
- depthwise2d
- softmax
- pool
- fc
- relu
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
[nnc] Refactor weights conversions in Caffe importer (#2209)
* Move conversion of `BlobShape`s to `TensorVariant`s from `createMIRNodesFromLayer to individual layer conversion methods;
* Remove unnecessary type alias `IrTensor`.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Skeleton for acl backend unit tests (#2549)
- added two groups of tests: MIR to DOM transformations and DOM to text transformation
- Declarations of checker functions
- two example tests, one for each group
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 7 Dec 2018 11:23:02 +0000 (14:23 +0300)]
[nnc] Initial implementation of caffe2_op_creator (#2333)
Initial implementation of caffe2_op_creator.
`mobilenet` supported, to support `inception` model - need to support custom paddings in pooling ops and test not tested operation conversations.
Implemented ops:
- Add
- AveragePool
- Conv
- Concat
- Dropout
- FC
- GivenTensorFill
- MaxPool
- Mul
- Relu
- Softmax
- SpatialBN
- Sum
Not tested ops:
- Add
- Concat
- Mul
- SpatialBN
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
[nnc] Update description of ModelIR in documentation (#2548)
Reflect recent changes in ModelIR in the documentation.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
ACL backend documentation (#2547)
The ACL backend internal structure documentation.
Signed-off-by: Timur Ablyazimov <t.ablyazimov@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 08:29:50 +0000 (17:29 +0900)]
[tfldump] rename DumpOp (#2565)
* [tfldump] rename DumpOp
This will rename DumpOp to OrPrinter for class and variables.
- Each inherited classes are also renamed as XxxxPrinter
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* rename variable
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 08:29:26 +0000 (17:29 +0900)]
[enco] frontend/caffe: separate relu (#2562)
This will move ReLU layer handler to separate file
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 07:37:09 +0000 (16:37 +0900)]
[enco] frontend/caffe: separate pooling (#2560)
This will move Pooling layer handler to separate file.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Dec 2018 07:32:13 +0000 (16:32 +0900)]
[enco] Introduce Intrinsic Selection (#2553)
This commit introduces the basic implementation of Intrinsic Selection pass.
The current implementation is able to rewrite an "Eval" instruction for
"Depthwise concat over features" as "ANNDepthConcatF" instruction.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 02:27:47 +0000 (11:27 +0900)]
[enco] frontend/caffe: separate convolution (#2556)
This will move Convolution layer handler to separate file.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
윤현식/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 01:48:21 +0000 (10:48 +0900)]
[enco/tfl/frontend] Function to copy tensor value into coco::Data (#2511)
* [enco/tfl/frontend] Function to copy unfilled tensor value into coco::Data
This commit adds a function to copy unfilled tensor value into coco::Data.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* pr fix: added if with continue, assert, int32 message
윤현식/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 01:47:43 +0000 (10:47 +0900)]
[enco] Fix wrong OFM size of regression test (#2554)
Fixed from [h, w] : [7, 7] ==> [8, 8]
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 01:18:53 +0000 (10:18 +0900)]
[enco] frontend/caffe: separate Input (#2541)
This will move Input layer handler to separate file.
And changes for related with registry updates.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 7 Dec 2018 01:13:25 +0000 (10:13 +0900)]
[tfldump] rename OpPrinterRegistry (#2552)
This will rename class DumpOpRegistry to OpPrinterRegistry
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Dec 2018 00:34:15 +0000 (09:34 +0900)]
[enco] Support Layout Conversion over ANNDepthConcatF (#2550)
Now, Data Layout Conversion pass will insert copy instructions for
layout conversion before/after ANNDepthConcatF instruction if they
are necessary.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 6 Dec 2018 17:44:21 +0000 (20:44 +0300)]
[nnc] Support constant operation in interpreter (#2546)
Save a value from node in variable storage
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
Improved Pooling and GlobalAveragePool Implementation for ONNX (#2540)
Some bugs in ONNX AveragePool and MaxPool were fixed.
GlobalAveragePool for ONNX was supported as simple AveragePool with a set of default parameters.
Signed-off-by: Andrew V. Tischenko <a.tischenko@partner.samsung.com>
Add test round 3 in System Test Document (#2493)
* correct unsupported tests
* add tests for ACL C++ soft backend
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 09:37:58 +0000 (18:37 +0900)]
[enco] frontend/caffe: Prepare to use GraphBuilder (#2538)
This will add using GraphBuilderRegistry to prepare handling by each layer GraphBuilder
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 08:10:35 +0000 (17:10 +0900)]
[enco] frontend/caffe: Rename load() var (#2536)
This will rename load() local variable m to use full name module and d to data
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 08:09:50 +0000 (17:09 +0900)]
[enco] frontend/caffe: Separate OpBuilder and InstrBuilder (#2537)
This will move OpBuilder and InstrBuilder class to separate file
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 08:09:23 +0000 (17:09 +0900)]
[tflchef] Use nnkit-run in testing (#2534)
This commit replaces all the use of deprecated nni in tflchef testing
framework with nnkit-run.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 07:42:11 +0000 (16:42 +0900)]
[enco] frontend/caffe: Introduce GraphBuilderRegistry (#2535)
This will introduce GraphBuilderRegistry class to register GraphBuilder by layer type
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 06:50:23 +0000 (15:50 +0900)]
[enco] DataLayoutConversion with free Load op (#2531)
It is currently impossible to apply Data Layout Conversion if there is a free Load op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
윤현식/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 06:48:14 +0000 (15:48 +0900)]
[enco/tfl/frontend] TensorContext returns tensor type (#2533)
This commit enables TensorContext to return tensor type.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 06:43:49 +0000 (15:43 +0900)]
[nnkit] Introduce nnkit-run (#2527)
This commit introduces nnkit-run (which is a copy of nni) as the first
step to removing "nni".
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 06:29:01 +0000 (15:29 +0900)]
[enco] Support block dump (#2528)
This commit implement "enco_dump_block" debugging helper which shows all
the instructions in a given block.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 05:53:43 +0000 (14:53 +0900)]
[enco] frontend/caffe: Introduce GraphBuilder (#2530)
This will introduce GraphBuilder class as a base for layer imports
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 05:38:07 +0000 (14:38 +0900)]
[enco] Build ANN IR from ANNDepthConcatF instruction (#2521)
ANN IRGen Pass now generates ANN IR from ANNDepthConcatF instruction.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 05:08:38 +0000 (14:08 +0900)]
[coco] Use override consistently (#2526)
With this commit, all the overridden methods in PlainWeightContextImpl
and DataImpl are marked with "override".
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 05:08:30 +0000 (14:08 +0900)]
[enco] frontend/caffe: Introduce GraphBuilderContext (#2529)
* [enco] frontend/caffe: Introduce GraphBuilderContext
This will introduce GraphBuilderContext to pass information to operator import routines
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* change include
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 04:41:36 +0000 (13:41 +0900)]
[enco] frontend/caffe: Separate as_tensor_shape (#2520)
* [enco] frontend/caffe: Separate as_tensor_shape
This will separate as_tensor_shape() to its own file with caffeimport namespace
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* move using to global
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 03:44:03 +0000 (12:44 +0900)]
[coco] Fix a USE-AFTER-FREE bug in OpHelper test (#2519)
The current OpHelper test may access a freed Op object during
'teardown'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 03:43:27 +0000 (12:43 +0900)]
[enco] frontend/caffe: Introduce WeightContext (#2524)
* [enco] frontend/caffe: Introduce WeightContext
This will introduce WeightContext and take weight access part
File name is Context.h to include other context related classes as tflite
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* add headers and cpp file
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 01:59:11 +0000 (10:59 +0900)]
[tfldump] dump inputs and outputs (#2522)
* [tfldump] dump inputs and outputs
This will add part to dump inputs and outputs of the Model
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* remove local vars
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 6 Dec 2018 01:16:14 +0000 (10:16 +0900)]
[tfldump] dump operator options (#2516)
This will add to dump operator options for each operator codes
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Dec 2018 00:23:02 +0000 (09:23 +0900)]
[coco] Deallocate Op in OpManager properly (#2500)
The current implementation of OpManager just deallocates all the Op in
sequential order without considering their dependencies.
However, this implementation may result in USE-AFTER-FREE errors.
This commit guarantees that OpManager deallocates Op nodes from the root
to leaves.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 23:38:45 +0000 (08:38 +0900)]
[coco] Deallocate a partial Op tree correctly (#2502)
The current implementation of destroy_all does not work for a partial Op
tree.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 23:38:32 +0000 (08:38 +0900)]
[enco] Reduce Identical Objects with free instructions (#2505)
The current implementation of Reduce Identical Objects pass does not
work correctly in the presence of free instructions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Fix reduceOp reduction dimensions handling (#2494)
- fix shape inference
- fix interpreter index computation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
[nnc] Support for asymmetric strides in Pool, Conv2D, DepthwiseConv2D operations (#2460)
* Add support for asymmetric strides to Pool, Conv2D, DepthwiseConv2D operations;
* Refactor convolution and pooling parameter computation in Caffe importer.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 5 Dec 2018 15:00:20 +0000 (18:00 +0300)]
[nnc] Replace zero-dim tensors with tensor of shape {1} (#2513)
Fixes multiple issues involving zero-dimension tensors. Includes Bias, Scale, Reduce and Elementwise operations
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
[nnc] Use Transpose operation in Caffe importer (#2468)
Use Transpose operation in Caffe importer to switch between Caffe NCHW and ModelIR NHWC formats.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 5 Dec 2018 08:28:18 +0000 (17:28 +0900)]
[tfldump] Prepare dump Operator options (#2503)
This will add DumpOpRegistry and DumpOp to dump Operator options(properties)
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 5 Dec 2018 08:28:03 +0000 (17:28 +0900)]
[tfldump] fix clang warning (#2507)
This will fix clang compile warning with '-Wlogical-op-parentheses'
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 5 Dec 2018 08:27:51 +0000 (17:27 +0900)]
[tfldump] fix int to int32_t (#2509)
This will fix type int to int32_t to distinghish exact type
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 04:50:50 +0000 (13:50 +0900)]
[enco] Use "destroy_all" in coco (#2501)
The current implementation of Free Op Elimination pass uses its own
destroy function, but OpManager now provides "destroy_all" method which
has exactly same functionality.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 5 Dec 2018 04:14:48 +0000 (13:14 +0900)]
[tfldump] Dump operators (#2497)
* [tfldump] Dump operators
This will add part to Dump Operators and related functions
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* use int32_t
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 04:12:09 +0000 (13:12 +0900)]
[enco] Introduce extended coco IR (#2496)
This commit introduces a placeholder for extended coco IR entities. The
current implementation includes only one extended instruction (ANNDepthConcatF).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 03:41:26 +0000 (12:41 +0900)]
[coco] Introduce OpManager::destroy_all (#2498)
With this commit, OpManager now allows users to destroy a Op tree via
destroy_all method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 5 Dec 2018 03:39:38 +0000 (12:39 +0900)]
[tfldump] dump operand quantization (#2495)
* [tfldump] dump operand quantization
This will add dump to dump operand quantization information.
For this, add dump of flatbuffers::Vector type.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* remove unused
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Dec 2018 00:51:07 +0000 (09:51 +0900)]
[enco/tfl] Introduce Regression_0002 testcase (#2492)
This commit introduces Regression_0002 case which tests the
correctness of dead code elimination optimizations.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 10:35:34 +0000 (19:35 +0900)]
[enco] Free Op Elimination (#2491)
* [enco] Free Op Elimination
This commit introduces Free Op Elimination pass (and a related test) to
enco pipeline.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use consistent testcase name
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 09:44:07 +0000 (18:44 +0900)]
[coco] Introduce root helper (#2489)
This commit introduces root helper which allows users to easily access the
root Op for a given Op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 4 Dec 2018 09:01:01 +0000 (18:01 +0900)]
[tfldump] Dump operands(tensors) (#2486)
This will add operands and it's properties
- tensors live in subgraph, subgraph selector is also introduced
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 08:58:46 +0000 (17:58 +0900)]
[coco] Generalize isa<T> and safe_cast<T> (#2490)
With this commit, isa<T> and safe_cast<T> correctly works even in the
presence of "unknown" derived classes.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 08:17:24 +0000 (17:17 +0900)]
[enco] Free Instr Elimination (#2487)
This commit implements Free Instr Elimination pass (and a related test) in enco backend.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 07:48:15 +0000 (16:48 +0900)]
[coco] Remove cast<T> helper (#2482)
It is impossible to implement general cast<T> helper under open Instr
class hierarchy.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 07:48:06 +0000 (16:48 +0900)]
[stdex] Introduce Queue.h (#2484)
This commit introduces Queue.h which will hold various utilities for
std::queue<T>.
The current implementation includes only one helper: 'take'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 4 Dec 2018 07:10:43 +0000 (16:10 +0900)]
[tfldump] Dump buffers (#2480)
This will add dump buffers to Dump
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 06:35:43 +0000 (15:35 +0900)]
[coco] Remove Instr mutator interface (#2476)
This mutator interface was introduced when Instr has closed hierarchy,
and thus it is no longer valid as Instr now support open hierarchy.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 4 Dec 2018 04:42:20 +0000 (13:42 +0900)]
[tfldump] Add Reader with OpCode reader (#2475)
* [tfldump] Add Reader with OpCode reader
This will introduce Reader class that holds OpCodes
Dump will dump operator codes that are used in the Model
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* opcode_name as a function
* move TFliteSubGraphs_t inside class
* show number legend
* add some more
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Dec 2018 03:37:33 +0000 (12:37 +0900)]
[coco] Support Custom Instr Construction via InstrManager (#2474)
With this commit, users are able to construct a custom instr object
through InstrManager.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 4 Dec 2018 01:36:51 +0000 (10:36 +0900)]
[tfldump] Empty tflite Model dump (#2466)
This will introduce empty tflite::Model dump as a place holder
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
[nnc] MeanSoftBackend (#2367)
This adds Support for reduction with Mean to C++ soft backend.
The implementation is a reference one from TFLite.
Signed-off-by: Andrei Shedko <a.shedko@partner.samsung.com>
[nnc] Support non-unit batch in deconv (#2471)
Added support of Batch dimension in Deconv operation
* shape inference
* interpreter
* c++ softBackend
Signed-off-by: Andrei Shedko <a.shedko@partner.samsung.com>
[nnc] Fix pool operation round mode (#2470)
* Add round mode to Pool operations for each framework
* Fix output shape for pooling operation
* Fix strides on Pool op shape inference
Signed-off-by: Pavel Iliutchenko <p.iliutchenk@samsung.com>
[nnc] Implementation of Transpose operation (#2464)
* Add `Transpose` operation to ModelIR;
* Support `Transpose` operation in interpreter and soft backend.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 3 Dec 2018 07:25:21 +0000 (16:25 +0900)]
[tfldump] Load tflite file (#2465)
This will add tflite loader part of tfldump
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 3 Dec 2018 02:20:42 +0000 (11:20 +0900)]
[tfldump] Add tflite schema flatbuffers (#2445)
* [tfldump] Add tflite schema flatbuffers
This will add tflite schema and flatbuffers converter to generate the header
Empty Model.h is added to check the build
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* cmake changes
* rename files
* another rename
[nnc] Set operations names based on layer names in Caffe importer (#2463)
Refactor Caffe importer to set Operation names based on layer names (previously names were set based on output blob names).
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[nnc] Support batch axis in acl backend (#2462)
- Support batch axis
- Add more checks on supported data formats
- Add assert in transposeShape and related fixes
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>