박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 06:48:10 +0000 (15:48 +0900)]
[coco] Pass Bag-to-BagInfo link via virtual method (#993)
This commit revises Object class to get Bag-to-BagInfo link via virtual
method (to make it easy to introduce a new fields if necessary).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 05:04:13 +0000 (14:04 +0900)]
[coco] Fix incorrect ifdef guard (#994)
This commit fixes incorrect ifdef guard of FeatureObjectInfo.forward.h
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 04:52:06 +0000 (13:52 +0900)]
[nnkit] Type-generic Caffe Backend (#991)
This commit revises FloatCaffeBackend ans type-generic CaffeBackend.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 04:51:57 +0000 (13:51 +0900)]
[coco] Use consistent ifdef guard (#995)
This commit updates inconsistent ifdef guards in coco IR headers.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 04:51:47 +0000 (13:51 +0900)]
[coco] Use consistent factory method name (#996)
This commit renames make method in InputManager and OutputManage classes
as 'create' similarly as other manager classes.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:35:04 +0000 (11:35 +0900)]
[coco] Introduce KernelObjectInfo (#987)
This commit introduces KernelObjectInfo class which will hold the
internal state of kernel objects in coco IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:34:56 +0000 (11:34 +0900)]
[coco] Introduce 'Conv2DTest' fixture (#988)
This commit introduces 'Conv2DTest' fixture to simplify Conv2D op tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:34:49 +0000 (11:34 +0900)]
[coco] Introduce Instr fixtures (#989)
This commit introduces InstrTest, FeatureInstrTest, UnifTTest classes
which includes common routines for writing tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:32:55 +0000 (11:32 +0900)]
[nnkit] Extract TensorContext (#992)
This commit extracts CaffeTensorContext (in nnkit Caffe backend) as
nnkit::support::caffe::TensorContext.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:32:48 +0000 (11:32 +0900)]
[coco] Introduce 'ObjectTest' fixture (#990)
This commit introduces 'ObjectTest' fixture which includes common
infrastructure for writing 'Object' tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 14 Aug 2018 02:01:50 +0000 (11:01 +0900)]
[nnkit] Construct CaffeBackend from caffe::Net (#967)
* [nnkit] Construct CaffeBackend from caffe::Net
Currently, the constructor of CaffeBackend takes arguments for
caffe::Net, and forwards it to internally allocated caffe::Net instance.
This commit revises CaffeBackend constructor to take an exteranlly
allocated caffe::Net instance as its argument.
This change allows us to construct a caffe backend from in-memory caffe
model (instead of serialized one).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Remove unnecessary comment
Improve command line parser and add unit tests for command line interface (#984)
* command line parser is done
* add unit tests for testing options declaration and correct parsing
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Generalize options for soft backend (#923)
Replace specific file paths with output directory and common name
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
[nnc debug] Add internal documentation (#971)
Added rst document desribing nnc debugging system.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
Fix tflite Dims argument (#954)
Reverse axis order for tflite functions.
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Shape inference unit test fix (#972)
Add absent dimensions into input data shape
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 13 Aug 2018 02:21:17 +0000 (11:21 +0900)]
[coco] Use std::set to record dependent objects (#968)
This commit revises Bag and BagInfo to use std::set (instead of PtrList)
to record dependent objects.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 13 Aug 2018 02:21:03 +0000 (11:21 +0900)]
[coco] Simplify BlockManager tests (#956)
This commit extracts the common routine in BlockManager tests, and
move it to a new test fxiture class (BlockManagerTest).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
interpreter_plugin: fix segfault if input/output node not found (#950)
add intput / output nodes checking
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
interpreter_plugin: fix input tensor initialization (#953)
add tensor and input file sizes checking
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
IR graph: Fix getInput/getOutput (#949)
add checking of map search results
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
Fix output nodes search by name (#948)
fix problem when interpreter cannot find output node by name
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
Soft backend: eigen library (#841)
Add library with common support functions for operations
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 08:57:39 +0000 (17:57 +0900)]
[nnkit] Type-generic Caffe TensorContext (#966)
This commit revises FloatCaffeTensorContext in nnkit Caffe backend as a
type-generic one.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 08:57:30 +0000 (17:57 +0900)]
[coco] Non-public head method (#965)
This comit revises DLinkedLists:::Node to allow its descendent classes
to have non-public head method (The current design enforces head to be a
public method).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 08:57:23 +0000 (17:57 +0900)]
[coco] Introduce FeatureObjectInfo (#964)
* [coco] Introduce FeatureObjectInfo
This commit introduce FeatureObjectInfo class which internally manages
mutable information related with each FeatureObject.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use correct incorrect ifdef guard
Cmdline: add command line infrastructure (#952)
implementation of the following things:
* parser for command line;
* interface for creating options
* wrapper for unit tests
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 07:13:13 +0000 (16:13 +0900)]
[coco] Introduce 'Arg' class (#960)
* [coco] Introduce 'Arg' class
This commit introduces 'Arg' class which servers as a base class for
both Input and Output.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use consistent declaration
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 06:24:53 +0000 (15:24 +0900)]
[coco] Remove deprecated Bag constructor (#963)
This commit removes deprecated Bag object constructor.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 05:55:58 +0000 (14:55 +0900)]
[coco] Add 'curr' method to DLinkedList::Node (#961)
This commit introdcues 'curr' method which internally casts this as
Child, and replaces all the use of reinterpret_cast in Node
implementation with curr method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 05:53:19 +0000 (14:53 +0900)]
[coco] Introduce FeatureObjectTest class (#959)
This commit revises FeatureObject-related tests using FeatureObjectTest
class.
This class provides some usefule utilities (such as allocate) for
writing tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 05:52:56 +0000 (14:52 +0900)]
[coco] Introduce KernelObjectTest (#962)
This commit introduces KernelObjectTest class which includes various
helper methods for writing KernelObject tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 10 Aug 2018 01:08:51 +0000 (10:08 +0900)]
Disable failing nnc test (#958)
This commit temporarily disables a part of failing nnc test to fix build
break.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 9 Aug 2018 23:00:15 +0000 (08:00 +0900)]
[coco] Implement Op::parent method (#940)
This commit implements Op::parent method which allows users to retrieve
an instruction that owns an operation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 9 Aug 2018 22:59:39 +0000 (07:59 +0900)]
[coco] Update OpLink on UnitF::op update (#939)
This commit revises UnitF::op method to update OpLink properly.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 9 Aug 2018 22:57:27 +0000 (07:57 +0900)]
[coco] Introduce ObjectInfo (#938)
This commit introduces ObjectInfo class, and revises ObjectManager to
take Object -> ObjectInfo link on construction.
This is the first step toward support automatic object def/use updates.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Bugfix: tests for auto dimension reshape (#857)
Add undefined dimension constant and more tests for shape inference
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 8 Aug 2018 13:23:36 +0000 (16:23 +0300)]
[nnc] Fix Caffe Concat operator import (#924)
Concat layer might not have a ConcatParameter section with it,
so it is only possible to recognize it by the name of the layer.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 8 Aug 2018 13:22:20 +0000 (16:22 +0300)]
[nnc] Add doxygen configuration file (#914)
This config is set to:
- extract undocumented entities as well (for class diagrams etc)
- extract private class members (for fuller documentation)
- extract only C/C++ files
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Softbackend: move serialization out of ModelAnalyzer (#859)
Check limits of char parameters properly,
split max and average pool in defferent calls,
serialize output shape where needed
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
[nnc testing] Move unit tests to a separate folder (#913)
Created unittests dir, moved nnc module tests there, created CMakeLists.txt for new directory and edited nnc CMakeLists.txt.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 10:30:20 +0000 (19:30 +0900)]
[nnkit] Introduce nnkit_support_caffe (#936)
This commit extracts BlobContext and its descendents from nnkit Caffe
backend implementation as nnkit_support_caffe library.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 10:04:41 +0000 (19:04 +0900)]
[coco] Use OpManager for Instr test (#937)
This commit removes DummyOp implementation from Instr test, and uses
OpManager to create an Op instance (which is required by UnitF::op
method tests).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 08:32:58 +0000 (17:32 +0900)]
[coco] Pass OpLink to Op/Instr Manager (#935)
This commit revises Op/Instr Manager to take OpLink on construction.
Note that OpLink passed ot Op/Instr Managers is not used, yet.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 06:36:32 +0000 (15:36 +0900)]
[coco] Enable format check (#932)
This commit enables format check on coco.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 05:44:21 +0000 (14:44 +0900)]
[coco] Introduce Generic Data Context (#929)
* [coco] Introduce Generic Data Context
This commit introduces generic data context, which allows any frontends
to deliver constand weight data to backends.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix GCC 4.9 build break
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 04:56:41 +0000 (13:56 +0900)]
[coco] Default constructible DLinkedList::Node (#926)
The current design of DLinkedList::Node enforces all of its descendent classes to
implement a consturctor that takes PtrLink, and passes it to its parent.
This restriction makes it difficult to introduce some intermediate
traists.
This commit revises DLinkedList::Node to remove this restriction.
The current design enforces only leaf classes to implement 'get' method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 01:14:01 +0000 (10:14 +0900)]
[coco.generic] Generic Data Handling Library (#920)
This commit introduces 'coco_generic' which provides various classes and
functions to deal with generic data (such as f32).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 8 Aug 2018 01:00:53 +0000 (10:00 +0900)]
[coco] Require reads and updates for Instr classes (#922)
This commit requires all of Instr classes to implement reads and updates
methods which returns a set of Bags read/updated during execution.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Soft backend: refactoring of artefact Shape class (#820)
Adjust artefact shape to implementation needs
Add more tests
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 Aug 2018 10:42:04 +0000 (19:42 +0900)]
[coco] Hide BagInfo from Users (#917)
This commit rewrites 'Bag.h' to include 'BagInfo.forward.h' instead of
'BagInfo.h' in order to hide the implementation details of 'BagInfo'
from the users of 'Bag'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 Aug 2018 10:18:44 +0000 (19:18 +0900)]
[nest] Support Free Variable enumeration (#901)
This commit introduces 'nest::FV' which allows us to collect free
variables in various nest objects such as expression.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnc debug] Add debugging system (#893)
Add logging system implementation.
This initial commit adds header and source files with defined macros for debugging.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 7 Aug 2018 07:34:25 +0000 (10:34 +0300)]
[nnc] Remove unnecessary heap allocs in interpreter test (#916)
Changed unnecessary heap allocation for Interpreter and
ShapeInference objects to stack allocations.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 7 Aug 2018 07:34:09 +0000 (10:34 +0300)]
[nnc] Fix float equality check in the interpreter test (#915)
The problem was that the custom float comparing function wasn't
checking for some corner cases, like floats having a different
sign or being +0 and -0 (although this is very unlikely of course).
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 Aug 2018 03:40:42 +0000 (12:40 +0900)]
[caffegen] Add 'init' command (#918)
This commit introduces 'init' command to caffegen. Unlike 'fill' command,
'init' uses Caffe itself to initialize parameters with random values.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 Aug 2018 03:40:34 +0000 (12:40 +0900)]
[coco] Remove unnecessary Instr::ctor test (#919)
This commit removes Instr::ctor test as it currently tests methods
implemented in coco::DLinkedList<...>::Node.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 7 Aug 2018 00:53:10 +0000 (09:53 +0900)]
[coco] Generate Instr boilerplates from list (#896)
This commit generates Instr boilerplates such as casting methods,
visit method in Instr::Visitor, and mutate method in Instr::Mutator.
This change allows us to easily introduce new instructions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Fix soft backend build (#909)
Fix build of soft backend plugins
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 6 Aug 2018 06:10:21 +0000 (15:10 +0900)]
[coco] Allows users to query Bag's type (#908)
This commit introduces 'Bag::isInput' and 'Bag::isOutput' methods which
allows users to check Bag's type.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 6 Aug 2018 03:16:17 +0000 (12:16 +0900)]
[coco] Update 'BagType' from Output (#895)
Now, the changes on the backing bag of each 'Output' will automatically
updates 'BagType'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 6 Aug 2018 02:30:55 +0000 (11:30 +0900)]
[morph] Add 'NNAPI' support (#898)
This commit implements shape conversion routines for Android NN API.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 6 Aug 2018 02:30:48 +0000 (11:30 +0900)]
[morph] Introduce 'caffe' namespace (#899)
This commit introdcues 'caffe' namespaces in order to avoid name conflicts.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 3 Aug 2018 14:26:42 +0000 (17:26 +0300)]
Add interpreter test and Model IR graph creator that it uses (#872)
Graph creator can create a small Model IR graph consisting of an
input operator, and one other operator - the one being tested,
like Conv2D for example.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 3 Aug 2018 14:25:51 +0000 (17:25 +0300)]
Add serialized test info readers and tensor comparator (#871)
Added functions that use flatbuffers to get NN operator
parameters needed for Model IR graph construction, and a tensor
comparing function that acts as a GTest assert.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 3 Aug 2018 14:18:15 +0000 (17:18 +0300)]
Add nnc interpreter test main and test info schema (#869)
Added nnc interpreter test main file a flatbuffers schema
describing NN operator parameters needed for testing.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Soft backend: concat operation (#838)
Add implementation of tensor concatenation operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: pool operation (#835)
Add implementation of pool operations
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 3 Aug 2018 12:09:39 +0000 (15:09 +0300)]
Add nnc interpreter binary test data generator and serializer (#870)
So far only normally distributed random tensors are supported.
Flatbuffers is used for serialization.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Soft Backend: capped relu operation (#837)
Add implementation of capped relu operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: fully connected operation (#836)
Add implementation of fully connected operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: reshape operation (#834)
Add implementation of reshape operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: relu operation (#832)
Add implementation of relu operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: bias operation (#831)
Add implementation of bias add operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: softmax operation (#817)
Add softmax operation in soft backend
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: depthwise convolution operation (#816)
Add implementation of depthwise convolution operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: conv2d operation (#815)
Add Implementation of convolution operation in soft backend
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 07:42:59 +0000 (16:42 +0900)]
[coco] Update 'BagType' from Input (#892)
This commit revises 'Input' to update 'BagType' when it updates its
backing Bag.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 06:02:26 +0000 (15:02 +0900)]
[coco] Generate methods from Op.lst (#891)
This commit revises 'Op' class to generate the implementation of casting methods
and 'accept' method from 'Op.lst' file, which allows us to easily extend operators.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 05:28:38 +0000 (14:28 +0900)]
[coco] Pass Bag Link to OutputManager (#889)
This commit revises the constructor of OutputManager to take Bag Link
(Bag to BagInfo map) as its argument.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 03:01:17 +0000 (12:01 +0900)]
[coco] Introduce 'Op::uses' method (#890)
This commit introduces 'Op::uses' method which returns a set of objects
will be used during execution.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:02:21 +0000 (11:02 +0900)]
[coco] Pass Bag Link on the construction of InputManager (#888)
This commit revises the constructor of InputManager to take Bag Link
(Bag to BagInfo map) as its argument.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:02:12 +0000 (11:02 +0900)]
[nest] Introduce 'nest_core' (#887)
This commit relocates most of the current implementations under
'nest/core' directory to make a room for backend implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:02:03 +0000 (11:02 +0900)]
[coco] Use 'BagManager' in Input/Output tests (#886)
The current implementation of Input/Output tests explicitly invokes the
constructor of 'Bag'. As a result, these implementations are fragile over
Bag class design changes.
This commit revises these tests to use 'BagManager' to reduce the dependency
on the implementation details of Bag class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:01:54 +0000 (11:01 +0900)]
[morph] Initial commit (#885)
This commit creates 'morph' library project, which will include
shape conversion routines for various NN frameworks.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:01:45 +0000 (11:01 +0900)]
[coco] Overload operators over ElemID (#884)
This commit implements two primitive operator overloadings (==, <) over ElemID.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 02:01:28 +0000 (11:01 +0900)]
[coco] Allow iteration over instrs in a const block (#883)
Currently, users cannot invoke 'Block::instr' method for non-const
Block objects.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 3 Aug 2018 00:38:51 +0000 (09:38 +0900)]
[coco] Introduce 'BagType' enum class (#882)
This commit introduces 'BagType' enum class, and revises BagInfo to
store its type.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Soft backend: split generator file (#842)
Add library with common support functions for operations
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 2 Aug 2018 09:30:13 +0000 (12:30 +0300)]
Add ctags files to .gitignore (#861)
Add ctags files to .gitignore
Useful for everyone using ctags to traverse the code.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Soft backend: split C and C++ plugins (#862)
Split soft backend plugin in two
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: base functions for deserialization (#819)
Add library for parameter deserialization(like deserializeShape, deserializeKernel)
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Parameters reading from file (#818)
Add parameters mapping and unmapping of parameters file
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend generator serialize output shape, split pool operation (#814)
Check limits of char parameters properly,
split max and average pool in defferent calls,
serialize output shape where needed
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 06:58:51 +0000 (15:58 +0900)]
[coco] Introduce 'Instr::Mutator' (#875)
This commit introduces 'Instr::Mutator' interface, which allows us to
implement Instr transform pass.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 06:57:38 +0000 (15:57 +0900)]
[coco] Implement 'Instr::head' method (#876)
This commit implements NYI 'Instr::head' method, and adds related tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 06:57:31 +0000 (15:57 +0900)]
[coco] Allow visit over constant Op values (#877)
This commit adds 'const' quanlifier to 'accept' methods in Op class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 04:47:20 +0000 (13:47 +0900)]
[coco] Reorder 'FeatureObject' with feature layout (#874)
This commit introduces 'reorder' method similarly as in 'KernelObject'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 01:36:30 +0000 (10:36 +0900)]
[coco] Reorder 'KernelObject' with kernel layout (#873)
This commit introduces 'reorder' method which allows users to assign
element ID with predefined kernel layouts, such as NCHW and NHWC.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 2 Aug 2018 01:30:45 +0000 (10:30 +0900)]
[coco] Support visit over const Instr objects (#866)
The current implementation of 'accept' has no const qualifier, and thus
it is impossible to apply visitor over const Instr objects.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>