박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 05:10:45 +0000 (14:10 +0900)]
[coco] Introduce factory method for Module (#756)
Several memory allocations are necessary to construct a module object
currently, which may throw an exception.
This commit extracts all of memory allocations from constructor.
To extract memory allocations from constructor, this commit introduces
tow major changes over Module class design:
- Rewrite Module as pure virtual interface
- Introduce factory method
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 02:20:39 +0000 (11:20 +0900)]
[coco] Add 'Conv2D' class (#753)
This commit adds 'Conv2D' operation class which inherits 'Op' class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 01:26:23 +0000 (10:26 +0900)]
[coco] Add 'FeatureInstr' class (#752)
This commit adds 'FeatureInstr' class which inherits 'Instr' class.
'Featureinstr' class will serve as a base interface for all feature
-to-feature instructions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 01:07:43 +0000 (10:07 +0900)]
[coco] Add 'OutputManager' class (#744)
This commit adds 'OutputManager' class which serves as 'Output' object
factory.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 01:07:34 +0000 (10:07 +0900)]
[coco] Add 'BagManager' (#751)
This commit adds 'BagManager' with base implementation, which creates and tracks
'Bag' objects in coco IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 00:51:00 +0000 (09:51 +0900)]
[coco] Add 'KernelObject' class (#743)
This commit adds 'KernelObject' class which allows us to encode convolution
kernel values in IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 00:39:37 +0000 (09:39 +0900)]
[coco] Add 'Block' base implementation (#740)
This commit adds the base implementation of 'Block' which has only the
head of instr linked list.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 00:21:18 +0000 (09:21 +0900)]
[coco] Add 'entity' method to Module (#739)
This commit adds 'entity' method to Module, which returns a pointer of
internal 'EntityManager'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 00:21:09 +0000 (09:21 +0900)]
[coco] Implement 'InputManager' class (#741)
This commit implements 'InputManager' class which serves as a Input
(IR entity) factory.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 23 Jul 2018 00:21:00 +0000 (09:21 +0900)]
[coco] Fix a typo in Op class comment (#742)
This commit fixes two typos in Op class comment:
- Use doxygen-style comment
- breif -> brief
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
이성재/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 20 Jul 2018 07:49:01 +0000 (16:49 +0900)]
Apply shared library extension name according to OS (#696)
* apply dll extension name according to OS in PR test.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 06:26:21 +0000 (15:26 +0900)]
[coco] Add 'FeatureObject' class (#738)
This commit adds 'FeatureObject' class which inherits 'Object' class.
This class is used to represent feature map values used in CNN.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 05:39:37 +0000 (14:39 +0900)]
[coco] Add 'Input' class (#734)
This commit add 'Input' class which records input-related information.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 05:39:29 +0000 (14:39 +0900)]
[coco] Add 'Output' class (#735)
This commit adds 'Output' class which records informations related with
a network's output.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 05:38:35 +0000 (14:38 +0900)]
[coco] Add 'Instr' class (#728)
This commit adds 'Instr' class and related tests.
Note that 'Instr' has a NYI method as 'Instr' is tightly
coupled with 'Block' but 'Block' is not yet implemented.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 05:36:43 +0000 (14:36 +0900)]
[coco] Add 'EntityManager' class (#731)
This commit adds 'EntityManager' class which serves as a meta (lifetime)
managers of all kinds of IR entities (except Module).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 04:35:56 +0000 (13:35 +0900)]
[coco] Link nncc core/foundation libraries (#729)
This commit linkes nncc_core and nncc_foundaton to coco_core (to reuse
common implementation).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 20 Jul 2018 01:42:25 +0000 (10:42 +0900)]
[nest] Add 'Conv2D' example (#732)
* [nest] Add 'Conv2D' example
This commit adds an example how to describe simple Conv2D operation (without
bias and activation) with nest.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Add comments
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 19 Jul 2018 14:12:30 +0000 (17:12 +0300)]
Include in coverage info files not covered by tests (#690)
Include in coverage info files not covered by tests
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
Fix C/C++ files generation (#704)
generation header from *.def files:
- created separate rule for each def file
- fix library dependency
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:43:13 +0000 (19:43 +0900)]
[nest] Support 'ret' (#722)
This commit introduces 'ret' methods which allows users to set/get the
return specification.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:37:48 +0000 (19:37 +0900)]
[coco] Add 'Object' class template (#727)
This commit adds 'Object' class template which serves as a base class
for all typed values in coco IR, such as vector and feature.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:21:33 +0000 (19:21 +0900)]
[coco] Add 'PtrManager' class (#724)
This commit adds 'PtrManager' class which automatically manages a set of
allocated objects (which is passed via take method).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:12:03 +0000 (19:12 +0900)]
[coco] Add 'Bag' class (#726)
This commit adds 'Bag' class which serves as memory allocation in
coco IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:11:25 +0000 (19:11 +0900)]
[coco] Add 'Module' class template (#721)
This commit adds 'Module' class which serves as an entry point for coco
IR.
Note that this commit justs adds a template (or placeholder) for
'Module' implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 10:11:09 +0000 (19:11 +0900)]
[nest] Override 'operator*' over expressions (#720)
This commit overrides 'operator*' over two nest expressions to make it
easy to build nest expressions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Unittest for Exception::what (#708)
Implement test for Exception::what() method
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 19 Jul 2018 05:46:26 +0000 (14:46 +0900)]
Add pre-action description to nnkit README (#718)
This commit adds pre-action description to nnkit README
Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 05:42:00 +0000 (14:42 +0900)]
[nest] Add 'Ret' class (#717)
This commit adds 'Ret' class which records where to return the compute
value.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 05:41:49 +0000 (14:41 +0900)]
[nest] Support 'push' statement construction (#716)
This commit allows users to construct 'push' statement through 'module'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 05:41:41 +0000 (14:41 +0900)]
[nnkit] Fix inconsistent override in Caffe backend (#715)
This commit fixes inconsistent override tag in Caffe backend (reported
by Clang 7.0).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 05:41:32 +0000 (14:41 +0900)]
[nest] Introduce 'Mul' expression node (#713)
This commit adds 'MulNode' class under nest::expr namespace to support
arithmetic multiplication in nest IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 05:41:22 +0000 (14:41 +0900)]
[coco] Add 'DLinkedList' traits (#703)
* [coco] Add 'DLinkedList' traits
This commit adds 'DLinkedList<Child, Parent>::Node' and
'DLinkedList<Child, Parent>::Head' traits.
coco IR entities will use these traits to support traverse and
manipulation of the order of entities.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update assert per feedback
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 02:57:38 +0000 (11:57 +0900)]
Pass NNCC_WORKSPACE to docker container (#714)
This change allows users to override CMake working directory inside
docker container.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 01:15:59 +0000 (10:15 +0900)]
[nest] Overload 'operator+' over nest expressions (#712)
This commit introduce 'operator+' overloading to make it easy to
construct 'ADD' expression in nest IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 19 Jul 2018 01:05:20 +0000 (10:05 +0900)]
[nest] Add 'DomainContext' field to 'Module' (#711)
This commit adds 'DomainContext' field and related methods to 'Module'
in order to allow users to build domains through module instance.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 23:25:32 +0000 (08:25 +0900)]
[nest] Add 'AddNode' class (#701)
This commit adds 'AddNode' class under 'nest::expr' namespace, which
expressions the addition of two arithmetic values.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 23:25:23 +0000 (08:25 +0900)]
[nest] Add 'DomainContext' (#700)
This commit adds 'DomainContext' class which creates a domain, and
manages its information.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Add operation inputs info in ModelAnalyzer (#693)
Move op inputs inference from code generator to ModelAnalyzer
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 18 Jul 2018 09:02:13 +0000 (18:02 +0900)]
Document for an incubating project (#666)
This commit introduces a document for how to start an incubating project.
Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 04:04:13 +0000 (13:04 +0900)]
[coco] Add 'Op' class (#699)
This commit adds 'Op' class which serves as a base interface over all
supported NN operations.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 04:03:57 +0000 (13:03 +0900)]
[nest] Add 'Domain' class (#697)
This commit adds 'Domain' class which allows users to easily build
dereference expression with pre-allocated domain.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 02:46:29 +0000 (11:46 +0900)]
[coco] Add 'PtrLink' class (#698)
This commit adds 'PtrLink' class which manages a link relation between
two object pointers.
This commit also adds a related test, which shows the basic usage of
this class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 00:54:19 +0000 (09:54 +0900)]
[nest] Add 'PushNode' class (stmt) (#692)
This commit adds 'PushNode' class under nest::stmt namesapce as a mean
to express 'PUSH' statement.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 18 Jul 2018 00:53:59 +0000 (09:53 +0900)]
[coco] Add 'PtrList<T>' class (#691)
Coco IR often uses a list of object pointers. To reduce code
duplication, this commit introduces 'PtrList<T>' helper class
which manages a list of object pointers (using std::vector).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
이성재/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Jul 2018 11:51:20 +0000 (20:51 +0900)]
Apply shared library extension name according to OS (#680)
* apply dll extension name according to OS.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 10:52:08 +0000 (19:52 +0900)]
[nest] Add 'Closure' class (#688)
This commit adds 'Closure' class which temporarily records the domain and
index expressions, which makes it easy for user to construct IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 08:19:54 +0000 (17:19 +0900)]
Allow configuration over coverage report candidates (#665)
This commit revises 'gen-coverage-report' script to take coverage report
candidates from command-line.
Now, the coverage report generated by './nncc gen-coverage-report contrib' will
include all the code under 'contrib/'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 07:53:15 +0000 (16:53 +0900)]
[nest] Add 'DerefNode' class (#685)
This commit adds 'DerefNode' class under nest::expr namesapce.
'DerefNode' class serves as an internal representation of the
dereference expression (read a value from a domain with specific
indicies).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 07:03:22 +0000 (16:03 +0900)]
[coco] Initial commit (#686)
This commit creates a working directory for 'coco' project which aims to
build an experimental compiler for IR design.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 06:01:51 +0000 (15:01 +0900)]
[nest] Add 'Block' class (#684)
This commit adds 'Block' class which maintains a sequence of nest
statements.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 05:31:22 +0000 (14:31 +0900)]
[nest] Add 'Module' class (#683)
This commit adds 'Module' class which serves as an user entry point to
nest. The main role of 'Module' class is to allow users to construct IR
from their code.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 05:05:54 +0000 (14:05 +0900)]
[nest] Add 'VarContext' class (#682)
This commit adds 'VarContext' class which manages information related
with each variable (such as bound).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
이성재/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Jul 2018 01:23:11 +0000 (10:23 +0900)]
Add `ctags` default configuration file. (#681)
* added the .ctags file to the project root for tag file createion
convenience.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 00:56:31 +0000 (09:56 +0900)]
[nest] Add 'Subscript' class (#672)
This commit adds 'Subsscript' class under nest::expr namespace, which
denotes a ND domain subscript expression.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
이성재/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 17 Jul 2018 00:51:09 +0000 (09:51 +0900)]
Cast parameter values to resolve error founded by CLANG-9.0 (#679)
* cast `seed` to the right parameter type of `std::default_random_engine` constructor.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 00:36:53 +0000 (09:36 +0900)]
[nest] Add 'Var' class (#670)
This commit adds 'Var' class which users will actually use to contruct
nest expression.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 17 Jul 2018 00:36:43 +0000 (09:36 +0900)]
[nest] Add 'DomainInfo' class (#669)
This commit adds 'DomainInfo' class which records dimensionalities of
domain.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Inference shape in codegen (#674)
Add shape inference in codegen
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Code emitter: def files to C/C++ arrays converter (#673)
add *.def to *.h converter
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
add nnc section into readme (#607)
Add nnc readme
Adds nnc README.md file to describe how it works
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 09:39:16 +0000 (18:39 +0900)]
[pp] Use non-strict build by default (#667)
pp currently enforces strict build, but this may introduces unnecessary
burden on folks (who are not interested in pp).
This commit sets non-strict build as the default build mode of pp, and
turn strict build only when ENABLE_STRICT_BUILD is enabled.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 09:38:16 +0000 (18:38 +0900)]
[nest] Add 'Bound' class (#668)
This commit adds 'Bound' class which expresses value range of each
variable as min/max.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 08:40:51 +0000 (17:40 +0900)]
[nest] Add variable expression node (#664)
This commit adds 'nest::expr::VarNode' class which represents index
variable exression in nest IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 16 Jul 2018 07:45:07 +0000 (16:45 +0900)]
Modify maintainers in README (#659)
This commit modifies maintainers in README
- add hyperlink
Related with: #623 #654
Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 05:43:52 +0000 (14:43 +0900)]
[nest] Add statement-related base classes (#662)
This commit adds the follwoing statement-related base classes under
'nest::stmt' namespace:
- Node
- Visitor
The boilterplate implementations of Node and Visitor are derived from
'Node.def' to make it easy to extend statements.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 04:15:00 +0000 (13:15 +0900)]
[nest] Add expression-related base classes (#661)
This commit adds the following expression-related base classes (under
'nest::expr' namespace):
- Node
- Visitor
The boilterplate implementations of Node and Visitor are derived from
'Node.def' to make it easy to extend expressions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 03:06:03 +0000 (12:06 +0900)]
[nest] Add 'DomainID' class (#660)
This commit adds 'DomainID' class which serves as an internal
representation of 'domain' in nest IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 16 Jul 2018 02:21:43 +0000 (11:21 +0900)]
[nest] Add 'VarID' class (#655)
This commit adds 'VarID' class which is an internal representation of
nest variables (in IR).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
C++ code generator (#604)
Implementation of C++ *.cpp file generator
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend generator for cpp header (#603)
Dump compressed parameters
- Implementation of compressed parameters dump
- C++ Header generator materializer implementation
- Implementation of C++ header materializer
- Add tests for basic structures of generated c++ header
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Sun, 15 Jul 2018 06:34:05 +0000 (09:34 +0300)]
Add implementation of Caffe to Model IR converter (#640)
Add Caffe layer to Model IR converter skeleton
Added a class for converting Caffe layers to Model IR operations.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Sun, 15 Jul 2018 06:33:30 +0000 (09:33 +0300)]
Add utility functions for processing Caffe layer options (#637)
Add Caffe layer to Model IR converter skeleton
Added a class for converting Caffe layers to Model IR operations.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Sun, 15 Jul 2018 06:32:18 +0000 (15:32 +0900)]
Modify and revise maintainers in README (#623)
This commit modifies incorrect info about maintainers.
Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
Serialize parameters (#602)
Implementation of compressed parameters dump
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Dump compressed parameters (#601)
Implementation of compressed parameters dump
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Sun, 15 Jul 2018 06:29:12 +0000 (15:29 +0900)]
Suppress warnings from TensorFlow Lite code (#599)
This commit suppresses warnings (clang 7.0 reports) from TensorFlow Lite code.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 13 Jul 2018 13:48:37 +0000 (16:48 +0300)]
Create Model IR graph from Caffe model visitor (#635)
Implemented Caffe LayerParameter visiting function to call
Caffe to Model IR operation converter.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 13 Jul 2018 13:32:17 +0000 (16:32 +0300)]
Prepare data for Caffe layer to Model IR converter (#597)
Implemented functions preparing inputs and parameters for
creating Model IR operations.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 13 Jul 2018 13:27:11 +0000 (22:27 +0900)]
Support workspace override (#627)
This commit allows users to use their own workspace other than 'build'
via NNCC_WORKSPACE environment variable.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 13 Jul 2018 13:26:40 +0000 (16:26 +0300)]
Add Caffe model input processing (#596)
Process Caffe model Input layer and set up Model IR graph inputs.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 13 Jul 2018 13:26:11 +0000 (16:26 +0300)]
Add Caffe layer to Model IR converter skeleton (#595)
Added a class for converting Caffe layers to Model IR operations.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 13 Jul 2018 09:00:04 +0000 (18:00 +0900)]
Revise and modify typoes (#622)
This commit revises and modifies typoes.
Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
[nnc backend] Add Conv2D_FFT class (#582)
Add Conv2D_FFT class and functions for FFT routines.
Implementation will be added later (near future).
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 13 Jul 2018 05:44:03 +0000 (14:44 +0900)]
[pp] Support 'MultiLineText' append (#598)
'LinearDocument' currently supports 'LinearDocument' append, but does not support
generic 'MultiLineText' append.
This commit revises 'LinearDocument' to support generic 'MultiLineText'
append.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 13 Jul 2018 05:28:32 +0000 (14:28 +0900)]
[nest] Initial commit (#625)
This commit create a workspace for a lightweight nested loop generation
library named 'nest'.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 12 Jul 2018 15:20:41 +0000 (18:20 +0300)]
Fix incorrect assertion (#593)
`fread` returns number of read blocks( of size `size` ) instead of byte count
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 12 Jul 2018 08:41:54 +0000 (11:41 +0300)]
Add Caffe importer example (#592)
It prints the model and creates Model IR (but doesn't use it).
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 12 Jul 2018 07:52:27 +0000 (10:52 +0300)]
Add general tensor transpose helper (#589)
Added a generalized TensorVariant transpose helper function
used for converting convolution tensor weights to Model IR format.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 23:48:51 +0000 (08:48 +0900)]
[caffegen] Fix compiler warnings (#591)
This commit fixes all the compiler warnings (reported by clang 7.0)
in caffegen implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 23:11:10 +0000 (08:11 +0900)]
Fix mismatched tag warning (#586)
This commit fixes mismatched tag warning (clang 7.0 reports).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 23:10:52 +0000 (08:10 +0900)]
Fix missing override warnings (#587)
This commit fixes missing override warnings reported by clang 7.0.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 23:10:43 +0000 (08:10 +0900)]
[nnsuite] Fix unmatched ifdef guard (#588)
This commit fixes unmatched ifdef guard in RandomModel header.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 11 Jul 2018 15:24:57 +0000 (18:24 +0300)]
[nnc backend] Add nnc interpreter backend plugin (#577)
Add nnc interpreter backend plugin
Adds nnc_interpreter_plugin target
Implements backend plugin interface for nnc
Can be used to interpret previously loaded computation graph
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 11 Jul 2018 14:53:12 +0000 (17:53 +0300)]
Initialise uninitialised _moduleType (#583)
This commit initialise _moduleType in AbstractModule default constructor
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 14:49:27 +0000 (23:49 +0900)]
Add virtual destructor to AbstractSession class (#590)
This commit introduces virtual destructor on AbstractSession class.
Without this virtual destructor, it is possible that the destructor of
derived classes is not invoked properly.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 11 Jul 2018 14:08:57 +0000 (17:08 +0300)]
[nnc backend] Add NNInterpreter class (#576)
Add NNInterpreter class
This class implements model IR interpreter
Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
Basic model analyzer info gathering (#560)
Basic model analyzer info gathering
Save inputs, outputs and operation names.
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 11 Jul 2018 10:30:31 +0000 (19:30 +0900)]
[nnc] Rename 'soft_backend_test' (#585)
This commit renames 'soft_backend_test' as 'nnc_soft_backend_test' to
make it easy to find corresponding code.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 16:51:07 +0000 (19:51 +0300)]
Fix unused parameter warnings in Caffe importer (#584)
This commit fixes build problems by removing unused parameter warnings.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>