박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 10 Sep 2018 00:07:28 +0000 (09:07 +0900)]
[enco] Generate loops correctly (#1409)
The current implementation of LoopGen assumes that Shuffle is fully
specified over the destination bag.
While previous commit addresses one specific issue, it turns out that
LoopGen still suffers from various asserts during execution, and
generates incorrect code.
This commit rewrites LoopGen to depend on TransferSequence instead of
directly using Shuffle instruction to address all of remaining issues.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc] Scalar param support in IR dumper (#1397)
Added scalar parameter support in IR Dot Dumper
The params and their names are stored in a `vector<pair<string,float>>`
Signed-off-by: Andrei Shedko <a.shedko@partner.samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 07:48:42 +0000 (16:48 +0900)]
[enco.caffe] Support IRGen over Concat layer (#1408)
With this commit, enco caffe frontend is now able to generate coco IR
for Concat layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 07:38:51 +0000 (16:38 +0900)]
[coco] Use 'Dep' inside 'Object' (#1406)
This commit replaces Bag * inside Object with 'Dep'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 04:31:44 +0000 (13:31 +0900)]
[enco] Loop Generation over Partial Shuffle (#1405)
With this commit, Host codegen is now able to emit loop nests for
partial shuffle.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 04:31:36 +0000 (13:31 +0900)]
[enco] Introduce ShapeQuery class (#1404)
* [enco] Introduce ShapeQuery class
This commit generalizes CanonicalChannelAxis implementation as
ShapeQuery to reuse this logic for other layers.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix typos in comment
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 02:18:30 +0000 (11:18 +0900)]
[enco] Introduce ConcatSpec class (#1403)
This commit introduces ConcatSpec class which estimates the output shape
of Concat layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 02:12:43 +0000 (11:12 +0900)]
[coco] Introduce Dep class (#1401)
This commit introduces Dep class which represents the edge between Bag
and its dependent Object; the code itself is derived from Object::bag.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 7 Sep 2018 02:12:31 +0000 (11:12 +0900)]
[coco] Introduce Shuffle::range (#1400)
This commit extends Shuffle class with range method which returns the
set of elements that will be updated by Shuffle.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 23:12:36 +0000 (08:12 +0900)]
[enco] Add caffe 013 test (#1393)
This commit introduces caffe 013 test which includes an average pooling
layer with padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:54:46 +0000 (19:54 +0900)]
[coco] Support partial shuffling (#1382)
Shuffle instruction now uses 'map' instead of 'vector' to store
element transfers between two bags.
This change allows users to encode partial shuffling in coco IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:40:56 +0000 (19:40 +0900)]
[enco] Implement AvgPool2D decomposition (#1388)
With this commit, enco backend now decomposes Static AvgPool2D with
padding into PadF and PaddingExcluded AvgPool2D without padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:37:00 +0000 (19:37 +0900)]
[coco] Initialize BagLink via non-virtual method (#1390)
This commit deprecates virtual get method, and introduces non-virtual
setBagLink method.
This will allows us to use Bag Link inside destructor.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:36:43 +0000 (19:36 +0900)]
[enco] Extend ANN IR CodeGen to support Pad op (#1391)
This commit extends ANN IR CodeGen to support Pad op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:36:26 +0000 (19:36 +0900)]
[enco] Build ANN IR for PadF op (#1392)
This commit extends ANN IR builder to support PadF op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:20:13 +0000 (19:20 +0900)]
[enco] Introduce Pad op (#1387)
This commit extends ANN IR to support Pad op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:14:27 +0000 (19:14 +0900)]
[enco] Support INT32 tensor type (#1389)
This commit extends ANN CodeGen to properly declare a tensor operand of
INT32 type.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 10:10:37 +0000 (19:10 +0900)]
[ann] Introduce ANEURALNETWORKS_PAD (#1386)
ANEURALNETWORKS_PAD tag is currently missing in "NeuralNetworks.h".
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Fix build bug: remove conflicting declaration (#1384)
* remove conflicting declaration in interpreter
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Add tracking of error code (#1067)
Return value of a functions 'fstat' and 'fseek' is not checked.
The return value may indicate error code.
Signed-off-by: y.novikov <y.novikov@partner.samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 06:43:16 +0000 (15:43 +0900)]
[coco] Introduce PadF op (#1381)
This commit introduces PadF op, and extends OpManager to support PadF
construction.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 06:43:08 +0000 (15:43 +0900)]
[enco] Add caffe 012 test (#1380)
This commit introduces caffe 012 test which includes a MAX pooling layer
with padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 05:37:58 +0000 (14:37 +0900)]
[enco] Correctly set ANN MaxPool2D padding (#1379)
This commit revises ANN IR builder to use padding configuration stored
in MaxPool2D op (instead of hard-coded ones)
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 05:37:46 +0000 (14:37 +0900)]
[enco] Build IR from Max pooling layer with padding (#1378)
This commit revises enco caffe frontend to update padding on MaxPool2D
op with the padding values from pooling layer specification.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 05:37:34 +0000 (14:37 +0900)]
[enco] Build ANN IR for AvgPool2D with padding (#1377)
This commit enables ANN IR build for AvgPool2D with padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 04:39:05 +0000 (13:39 +0900)]
[coco] Introduce padding-related members to MaxPool2D (#1376)
This commit introduces padding-related members to MaxPool2D class to
allow frontend to deliver padding information to backend.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 04:38:49 +0000 (13:38 +0900)]
[coco] Remove deprecated Shuffle::at (#1375)
This commit removes deprecated Shuffle::at method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 04:38:36 +0000 (13:38 +0900)]
[enco] Build IR from Average Pooling layers with padding (#1373)
This commit extends enco caffe frontend to support coco IR build on
average pooling layers with padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 02:58:17 +0000 (11:58 +0900)]
[enco] Initial AvgPoolRewritePass implementation (#1374)
This commit introduces the initial implementation of AvgPoolRewritePass
which support only simple case (Static divisor with empty padding).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 02:27:26 +0000 (11:27 +0900)]
[enco] Add caffe 011 test (#1350)
This commit adds caffe 011 test which includes an average pooling layer
with stride.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 02:27:08 +0000 (11:27 +0900)]
[enco] Use Shuffle::insert instead of Shuffle::at (#1372)
This commit replaces all the use of deprecated Shuffle::at with
Shuffle::insert.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:40:25 +0000 (10:40 +0900)]
[coco] Introduce Instr::dispose (#1370)
This commit intorudces dispose method to Instr class, which allows users
to request each instruction to release IR entities that it internally manages.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:32:33 +0000 (10:32 +0900)]
[coco] Introduce divisor-related members in AvgPool2D (#1371)
This commit extends AvgPool2D with divisor-related members to allow
frontend to deliver diviosr-related information to backend.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:32:21 +0000 (10:32 +0900)]
[RefNN] Import PAD op implementation (#1351)
This commit imports PAD op implementation in AOSP (with small cleanup).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:32:09 +0000 (10:32 +0900)]
[coco] Override dispose in MaxPool2D (#1367)
This commit overrides dispose in MaxPool2D with empty body (to convert
dispose method in Op as a pure virtual method).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:31:57 +0000 (10:31 +0900)]
[coco] Support Op destruction (#1369)
This commit introduces destroy method into OpManager class, which allows
users to destruct Op instances.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:04:52 +0000 (10:04 +0900)]
[enco] Shape inference on Pooling layers with Padding (#1354)
This commit revises PoolingSpec to infer the ouput shape of pooling
layers with padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 01:04:22 +0000 (10:04 +0900)]
[coco] Introduce pad in AvgPool2D (#1353)
This commit introduces padding-related members into AvgPool2D class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:59:28 +0000 (09:59 +0900)]
[coco] Release kernel on Conv2D dispose (#1366)
This commit overrides dispose method for Conv2D. On dispose call, Conv2D
will release its kernel object.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:59:20 +0000 (09:59 +0900)]
[coco] Introduce dummy dispose to AvgPool2D (#1368)
This commit introduces dummy (empty) dispose method to AvgPool2D.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:52:58 +0000 (09:52 +0900)]
[coco] Introduce insert method in Shuffle (#1363)
* [coco] Introduce insert method in Shuffle
This commit introduces insert method in Shuffle instruction as the first
step toward partial shuffling support.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update _content properly inside insert
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:52:42 +0000 (09:52 +0900)]
[coco] Extract UnitF to a seperate file (#1365)
This commit extracts the declaration and implementation of UnitF into a
seperate file.
Note that test code is not yet extracted.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:08:58 +0000 (09:08 +0900)]
[coco] Introduce Op dispose (#1364)
This commit introduces Op::dispose method which allows users to request
each operation to release resources before destruction.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 6 Sep 2018 00:02:39 +0000 (09:02 +0900)]
[enco] Fix build break on clang 7 (#1362)
This commit includes 'functional' in Frontend.cpp to fix build break on
clang 7.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc]Visitor improvement Pure Virtual Methods to Virtual (#1303)
changed visitor's methods from pure virtual to virtual
Signed-off-by: Andrei Shedko <a.shedko@partner.samsung.com>
Add absent layers for mobilenet (#1333)
Add layers in Model IR:
+ batch norm
+ scale
+ dropout
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Fix soft backend unittest (#1332)
Disable soft backend ASSERT_DEATH test in case of release build,
this test is not applicable for release build.
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Refactor soft backend (#1305)
Remove redundant soft backend classes
Move all C++ code snippets to code_snippet directory
Generate headers from snippets to generated directory
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Update revision history in DLD document and add GPU backend item (#1355)
This commit adds item about GPU backend and updates revision history of DLD
Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
Update HLD by adding new revision info (#1356)
This commit adds new revision history line "add IR description"
Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 09:06:26 +0000 (18:06 +0900)]
[enco] Set AvgPool2D stride on ANN subnet construction (#1349)
With this commit, ANN subnet builder uses stride values stored in coco IR to
set strides of ANN AvgPool2D operation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 08:15:00 +0000 (17:15 +0900)]
[coco] Remove unused onUpdate hook (#1347)
* [coco] Remove unused onUpdate hook
This commit removes unused onUpdate hook from Object.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update related comment
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 07:36:33 +0000 (16:36 +0900)]
[enco.caffe] Set AvgPool2D stride (#1346)
With this commit, enco caffe frontend now sets the stride of AvgPool2D
using a value specified in a given caffe model (instead of hard-coded one).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 07:24:44 +0000 (16:24 +0900)]
[enco] Add caffe 010 testcase (#1345)
This commit adds caffe 010 testcase which includes a simple 3x3
average pooling layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 06:19:51 +0000 (15:19 +0900)]
[enco] Rewrite constant methods using concat (#1337)
Currently, constant methods in Global internally implements string concat
operation.
This commit revises these methods to reuse existing concat method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 06:19:38 +0000 (15:19 +0900)]
[enco] Build AvgPool2D op from caffe model (#1341)
With this commit, enco caffe frontend is now able to build a simple
AvgPool2D op from caffe model.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 06:19:23 +0000 (15:19 +0900)]
[coco] Introduce stride-related members in AvgPool2D (#1344)
This commit introduces stride methods and related _stride field in
AvgPool2D class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 04:09:57 +0000 (13:09 +0900)]
[enco] Decide pooling method from spec (#1339)
This commit revises PoolingSpec to correctly decide pooling method from
a model specification given as prototxt.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 04:07:33 +0000 (13:07 +0900)]
[enco] Generate code for AvgPool2D op (#1340)
This commit supports code generation on AvgPool2D op.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 01:05:50 +0000 (10:05 +0900)]
[coco] Construct AvgPool2D via OpManager (#1336)
This commit implements OpManager::create<AvgPool2D> method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 00:31:55 +0000 (09:31 +0900)]
[nncc.core] Remove unused tensor formatting classes (#1335)
This commit removes unused tensor formatting classes from nnnc core
library.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 00:11:06 +0000 (09:11 +0900)]
[enco.caffe] Correctly enumerate network outputs (#1327)
With this commit, caffe frontend now correctly enumerates network
outputs.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 5 Sep 2018 00:06:41 +0000 (09:06 +0900)]
[coco] Introduce AvgPool2D class (#1329)
This commit introduces AvgPool2D class which denotes 2D average pooling
operation in coco IR.
Note that the current implementation allows users to specify window
size.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Test compilation of artifact (#1119)
Adds test to check that backend is able to produce compilable files
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Generate unified setter and getter (#1284)
Generate unified setter and getter for single input/output nets to artifact.
This setter and getter has fixed declaration for all nets with single input and output
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Fix arm c++ artifact generation (#1285)
+ Fix alignment of serialized data
+ Fix build with NEON enabled
+ Fix -Wall warnings
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 08:41:14 +0000 (17:41 +0900)]
[enco] Add caffe 008 test (#1324)
This commit introduces caffe 008 testcase which checks whether enco can
correctly compile a simple caffe network that consists of a single Max
pooling layer with stride.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 08:22:06 +0000 (17:22 +0900)]
[enco.caffe] Set MaxPool2D op stride values (#1323)
With this commit, Caffe frontend now correctly sets stride of
MaxPool2D operation using the values inferred from caffe model.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 07:41:31 +0000 (16:41 +0900)]
[enco] Configure ANN subnet MaxPool2D strides (#1321)
With this commit, enco now sets stride values for MaxPool2D op in android
NN subnet from stride values stored in coco::MaxPool2D entity.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 07:41:11 +0000 (16:41 +0900)]
[enco.caffe] Infer the output shape of Pooling with stride (#1322)
With this commit, PoolingSpec is now able to infer the output shape of
Pooling layer with stride values.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 07:02:00 +0000 (16:02 +0900)]
[enco] Add caffe 007 test (#1319)
This commit adds caffe 007 test which consists of a simple Max pooling
layer without padding and stride.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 07:01:51 +0000 (16:01 +0900)]
[coco] Record stride configuration in MaxPool2D (#1320)
This commit introduces a field and methods related with stride into
MaxPool2D class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 05:00:49 +0000 (14:00 +0900)]
[enco] Initial MaxPool2D codegen support (#1318)
This commit implements codegen routines for MaxPool2D without
padding/stride.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 04:55:58 +0000 (13:55 +0900)]
[enco] Remove unused num_output field (#1317)
This commit removes unused num_output field from ConvolutionSpec class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 04:55:50 +0000 (13:55 +0900)]
[coco] Correct copy & move constructor (#1316)
This commit fixes copy&paste error in MaxPool2D class declaration.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 04:49:29 +0000 (13:49 +0900)]
[enco.caffe] Initial pooling layer support (#1314)
This commit presents the initial implementation of pooling layer
supporting routine.
The current implementation supports only simple Max pooling (w/o padding
and stride).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 02:20:15 +0000 (11:20 +0900)]
[enco.caffe] Initial PoolingSpec implementation (#1312)
This commit submits the initial implementation of PoolingSpec.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 02:18:00 +0000 (11:18 +0900)]
[coco] Configurable MaxPool2D window size (#1313)
This commit introduces a field and methods related with window (=
receptive field) configuration.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 01:51:13 +0000 (10:51 +0900)]
[enco] Extract string-manipulating rotuines (#1311)
This commit extracts concat method (for string manipulation) from
Subnet.cpp, and introduces String.h for future reuse.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 01:25:53 +0000 (10:25 +0900)]
[coco] Create MaxPool2D with OpManager (#1310)
This commit implements 'create' method for 'MaxPool2D' op in
'OpManager'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 00:26:47 +0000 (09:26 +0900)]
[coco] Introduce MaxPool2D class (#1307)
This commit introduces MaxPool2D class which allows coco IR to describe
MAX pooling over feature maps.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 4 Sep 2018 00:11:16 +0000 (09:11 +0900)]
[enco] Add 006 test (#1306)
This commit adds 006 testcase which includes a simple ReLU layer in it.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 23:24:52 +0000 (08:24 +0900)]
[enco] Build ANN ReLU operator (#1298)
This commit revises ANNGroupBuilder and ANNOpBuilder to recognize ReLU
operation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 23:24:40 +0000 (08:24 +0900)]
[enco] Emit ReLU opcode (#1297)
enco is now able to generate ANeuralNetworks_addOperation call for
RELU operator.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 3 Sep 2018 23:24:18 +0000 (08:24 +0900)]
[enco] Suppress caffe test glog messages (#1287)
This will suppress enco caffe test glog messages while in build steps.
Error and Fatal will be shown.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
Support for grouped convolution for caffe (#1209)
Adds support for grouped convolution in caffe: fix kernel tensor on shape inference
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Update HLD, SRS, and DLD documentation (#1304)
* include content from rst file into one
* remove redundant rst files
* correct reference to image
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Update DLD by adding of ModelIR, C++ backend, Caffe backend, CLI description (#1286)
Added description of:
* model IR
* soft backend
* caffe importer
* command line interface
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 05:47:35 +0000 (14:47 +0900)]
[coco] Introduce Window2D class (#1296)
This commit introduces Window2D class which denotes the size of
receptive field that some spatial operator (such as Pooling) uses.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 05:47:22 +0000 (14:47 +0900)]
[enco] Introduce ReLU op to ANN IR (#1294)
This commit introduces RELU tag to ann::Operation::Code enumeration.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 05:47:11 +0000 (14:47 +0900)]
[enco] Genernally normalize feature layout (#1293)
The current implementation of NormalizePass applies feature layout
normalization only for Conv2D operation.
With this commit, NormalizePass normalizes feature layout for general
feature operation (including ReLU).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 05:47:02 +0000 (14:47 +0900)]
[enco.caffe] Build IR from ReLU layer (#1292)
This commit implements the initial implementation of IR builder for ReLU
layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 02:32:31 +0000 (11:32 +0900)]
[enco] Add kernel_h/kernel_w convolution test (#1291)
This commit adds caffe 005 test which includes a convolution layer that
specifies its kernel size using kernel_h and kernel_w, and enables
build/inference test.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 02:03:55 +0000 (11:03 +0900)]
[coco] Extend OpManager for ReLU op (#1278)
This commit implements create<ReLU> method, which allows us to create
ReLU instances via OpManager.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 01:56:15 +0000 (10:56 +0900)]
[refNN] Support ReLU operator (#1290)
This commit imports ReLU operator-related implementations into the
reference NN runtime.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 01:38:07 +0000 (10:38 +0900)]
[enco.caffe] Support kernel_h/kernel_w paramaters (#1289)
With this commit, ConvolutionSpec is now able to recoginize kernel_h and
kernel_w parameters.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 01:10:48 +0000 (10:10 +0900)]
[enco] Asymmetrically padded convolution test (#1276)
This commit adds 004 test which includes asymmetrically padded
convolution layer, and enables build/inference test.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 3 Sep 2018 01:10:01 +0000 (10:10 +0900)]
[enco] Symmetrically padded convolution test (#1274)
This commit adds a 003 test which includes symmetrically padded
convolution layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Remove redundant curly brace (#1282)
remove redundant curly brace when initialization of cmake variable
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Closing files in interpreter`s plugin and cpp operations (#1185)
Add closing of files in interpreter_plugin.cpp and cpp_operations.def. Also checking for error codes was made.
Signed-off-by: y.novikov <y.novikov@partner.samsung.com>