platform/core/ml/nnfw.git
6 years ago[coco] Notify Child Join/Leave from DLinkedList (#1653)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 09:54:58 +0000 (18:54 +0900)]
[coco] Notify Child Join/Leave from DLinkedList (#1653)

With this commit, users may implement a hook on child join/leave event
for classes that inherit DLinkedList traits.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Test Conv2D's destructor (#1652)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 09:54:39 +0000 (18:54 +0900)]
[coco] Test Conv2D's destructor (#1652)

This commit introduces a test for Conv2D's destructor.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nest] Add license notice (#1648)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 09:53:57 +0000 (18:53 +0900)]
[nest] Add license notice (#1648)

This commit appends license notice over all the headers and sources of
nest.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Do NOT use GenericFeatureLayout in IR test (#1651)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 09:50:57 +0000 (18:50 +0900)]
[coco] Do NOT use GenericFeatureLayout in IR test (#1651)

This commit removes the use of GenericFeatureLayout inside IR test.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Insert Copy instead of Shuffle (#1654)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 07:44:21 +0000 (16:44 +0900)]
[enco] Insert Copy instead of Shuffle (#1654)

The current implementation of data layout normalization pass inserts
shuffle, which necessitates excessive iterations.

As an optimization, this commit revises data layout normalization
pass to insert copy instead of shuffle.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Lower Copy as Shuffle (#1650)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 06:37:24 +0000 (15:37 +0900)]
[enco] Lower Copy as Shuffle (#1650)

This commit introduces a lowering phase that rewrites Copy as Shuffle.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Unlink Use on destruction (#1649)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 05:53:12 +0000 (14:53 +0900)]
[coco] Unlink Use on destruction (#1649)

This commit revises Use's destructor to unlink itself from linked
Object (if exists).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nncc.foundation] Add license notice (#1625)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 05:12:53 +0000 (14:12 +0900)]
[nncc.foundation] Add license notice (#1625)

This commit appends license notice for all the sources and headers of
nncc foundation library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Rename 'Use' mock-up class (#1626)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Sep 2018 05:12:26 +0000 (14:12 +0900)]
[coco] Rename 'Use' mock-up class (#1626)

This commit renames 'Use' mock-up class as 'Consumer'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove redundant classes from modelIR (#1642)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Wed, 26 Sep 2018 17:22:51 +0000 (20:22 +0300)]
Remove redundant classes from modelIR (#1642)

Remove
 - IndexEnumerator class that duplicates functionality from ShapeInference
 - Redundant interface classes

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years agoUpdate STD doc (#1644)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Tue, 25 Sep 2018 14:21:02 +0000 (17:21 +0300)]
Update STD doc (#1644)

include all rst files into the document

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoUpdate SDD doc (#1643)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Tue, 25 Sep 2018 14:03:54 +0000 (17:03 +0300)]
Update SDD doc (#1643)

include all rst files into the document

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoMove SDD document into contrib/nnc (#1641)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Tue, 25 Sep 2018 13:49:13 +0000 (16:49 +0300)]
Move SDD document into contrib/nnc (#1641)

This commit moves SDD document from nncc/doc in md formant into nncc/contrib/nnc in rst format

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoMove STD document into contrib/nnc (#1636)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Mon, 24 Sep 2018 16:48:21 +0000 (19:48 +0300)]
Move STD document into contrib/nnc (#1636)

* move STD document into contrib/nnc

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years ago[nnc] Implement tensor serialization (#1398)
Denis Maksimenko/AI Tools Lab /SRR/Assistant Engineer/삼성전자 [Fri, 21 Sep 2018 13:02:10 +0000 (16:02 +0300)]
[nnc] Implement tensor serialization  (#1398)

* Add serialization classes

Add Serializer class that can be used for IR serialization, and unit tests for it.

Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
6 years agoPrevent crash build if components are unavailable (#1628)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 12:33:53 +0000 (15:33 +0300)]
Prevent crash build if components are unavailable (#1628)

* fix linking failure if frontends are unavailable

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years ago[nnkit] Throw bad_alloc on malloc failure (#1624)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 07:42:10 +0000 (16:42 +0900)]
[nnkit] Throw bad_alloc on malloc failure (#1624)

tflite backend (for nnsuite conv case) internally uses typed_malloc
method, which wraps std::malloc, which may return nullptr on memory
allocation failure.

This commit revises this method to throw std::bad_alloc on memory
allocation failure (similarly as C++ new) to make it easy to detect
memory allocation failure.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAllow users to skip contrib project build (#1623)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 06:18:47 +0000 (15:18 +0900)]
Allow users to skip contrib project build (#1623)

With this commit, users are now allowed to skip some projects under
contrib via cmake options (-DBUILD_CONTRIB_XXX).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Build tests only when test is enabled (#1622)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 06:18:30 +0000 (15:18 +0900)]
[coco] Build tests only when test is enabled (#1622)

With this commit, CMake will build coco tests (coco_core_test and
coco_generic_test) only when ENABLE_TEST is set.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[refNN] Simplify DCHECK macros (#1621)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 05:30:15 +0000 (14:30 +0900)]
[refNN] Simplify DCHECK macros (#1621)

This commit simplifies DCHECK macros using assert itself.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce Copy instruction (#1615)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:08:43 +0000 (13:08 +0900)]
[coco] Introduce Copy instruction (#1615)

This commit introduces Copy instruction as a mean to reduce compile
time.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Add lincense notice (#1618)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:08:23 +0000 (13:08 +0900)]
[nnkit] Add lincense notice (#1618)

This commit adds license notice for all the headers and sources.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[morph] Add license notice (#1619)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:08:16 +0000 (13:08 +0900)]
[morph] Add license notice (#1619)

This commit appends license notice over the sources and headers of morph
project.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nncc.core] Add license notice (#1620)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:08:08 +0000 (13:08 +0900)]
[nncc.core] Add license notice (#1620)

This commit addes license notices for all the sources and headers of
nncc core library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnop] Add license notice (#1617)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:08:00 +0000 (13:08 +0900)]
[nnop] Add license notice (#1617)

This commit appends license notice for all the headers and sources of
nnop project.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnsuite] Add license notice (#1616)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 04:07:52 +0000 (13:07 +0900)]
[nnsuite] Add license notice (#1616)

This commit appends license notice for all the headers and sources of
nnsuite library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[pp] Add license notice (#1608)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 01:58:22 +0000 (10:58 +0900)]
[pp] Add license notice (#1608)

This commit appends license notice for all the headers and soruces of
pp library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce Instr::IMutator interface (#1614)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 01:35:46 +0000 (10:35 +0900)]
[coco] Introduce Instr::IMutator interface (#1614)

This commit introduces Instr::IMutator interface, which aims to minimize
code changes upon Instr (similarly as in Instr::IVisitor).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Unique ID for each FeatureLayout (#1613)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 01:30:13 +0000 (10:30 +0900)]
[coco] Unique ID for each FeatureLayout (#1613)

This commit introduces unique ID value for each FeatureLayout, which
allows backend to easily distinguish each layout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce list_subdirectories (#1611)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 01:27:10 +0000 (10:27 +0900)]
Introduce list_subdirectories (#1611)

This commit extracts list_subdirectories function from
add_subdirectories, and re-implements add_subdirectories using
list_subdirectories.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Do NOT use GenericFeatureLayout in NNAPI backend (#1612)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Sep 2018 01:26:56 +0000 (10:26 +0900)]
[enco] Do NOT use GenericFeatureLayout in NNAPI backend (#1612)

This commit replaces all the use of GenericFeatureLayout inside NNAPI
backend implementation with optimized BHWC layout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce BHWC Feature Layout (#1601)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 23:57:37 +0000 (08:57 +0900)]
[coco] Introduce BHWC Feature Layout (#1601)

This commit implements BHWC Feature Layout class, which may speed up
some model import/codegen phase.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Instr::Visitor as abstract class (instead of interface) (#1605)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 23:51:58 +0000 (08:51 +0900)]
[coco] Instr::Visitor as abstract class (instead of interface) (#1605)

This commit introduces pure virtual Instr::IVisitor interface, and
revises Instr::Vistor as abstract class.

This change aims to minimize changes upon Instr extension.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Throw an exception on unknown operand type (#1606)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 23:51:50 +0000 (08:51 +0900)]
[enco] Throw an exception on unknown operand type (#1606)

The current implementation assumes that operand is either scalar or
tensor and validates it through assert.

This commit explicitly validates dynamic casted pointer, which allows us
to detect such an abnormal case even for release build.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Catch std::exception instead of std::runtime_error (#1607)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 23:51:26 +0000 (08:51 +0900)]
[enco] Catch std::exception instead of std::runtime_error (#1607)

The current implementation catches std::runtime_error, and thus failed
to catch other exceptions such as std::invalid_argument.

This commit revises catch statement to catch std::exception which is a
base class for a wide range of exceptions including
std::invalid_argument.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFix build for install target (#1609)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 17:04:18 +0000 (20:04 +0300)]
Fix build for install target (#1609)

* Fix build for install target

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoAdd OptionalTargetTools module (#1590)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 10:08:17 +0000 (19:08 +0900)]
Add OptionalTargetTools module (#1590)

This commit introduces OptionalTargetTools module which provides
optional_target_link_libraries macro, and revises
nncc_target_link_libraries to use this macro.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nncc.core] Return a uint32_t value on num_elements call (#1604)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 08:30:00 +0000 (17:30 +0900)]
[nncc.core] Return a uint32_t value on num_elements call (#1604)

Now, num_elements functions return a uint32_t value instead of a uint64_t
value.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnop] Explicit cast to int64_t (#1603)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 08:29:52 +0000 (17:29 +0900)]
[nnop] Explicit cast to int64_t (#1603)

This commit inserts explicit cast to int64_t (from uint32_t) before
using it.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Catch internal exceptions in main (#1600)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 08:04:51 +0000 (17:04 +0900)]
[enco] Catch internal exceptions in main (#1600)

With this commit, enco-cli now catches internal exceptions from
top-level main, and shows error message.

Note that this change is applied only to Release build. Debug build
remains unchanged to make it easy to check the stack trace on failure.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[stdex] Add license notice (#1602)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 06:35:49 +0000 (15:35 +0900)]
[stdex] Add license notice (#1602)

All the headers and sources in stdex now have license notice at the top.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[stdex] File naming convention (#1598)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 05:49:34 +0000 (14:49 +0900)]
[stdex] File naming convention (#1598)

This commit changes set as Set.h for consistency.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Replace Generic with BCHW layout in Caffe frontend (#1597)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 05:48:47 +0000 (14:48 +0900)]
[enco] Replace Generic with BCHW layout in Caffe frontend (#1597)

This commit replaces all the use of GenericFeatureLayout with BCHW
layout.

This change eliminates the need for reorder call, which speeds up IR
build.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Fix possible memory leak in DLinkedListTest (#1593)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 04:07:46 +0000 (13:07 +0900)]
[coco] Fix possible memory leak in DLinkedListTest (#1593)

With the current implementation, allocated objects will be leaked on
assert failure.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[caffegen] Add license notice (#1596)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 04:04:14 +0000 (13:04 +0900)]
[caffegen] Add license notice (#1596)

This commit adds license notice to all the headers and sources under
contrib/caffegen.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce BCHW Feature Layout (#1595)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 04:04:02 +0000 (13:04 +0900)]
[coco] Introduce BCHW Feature Layout (#1595)

This commit introduces BCHW feature layout class as a mean to speed up
model import/transformation phases.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[cli] Add LICENSE notice (#1568)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 02:51:48 +0000 (11:51 +0900)]
[cli] Add LICENSE notice (#1568)

This commit adds LICENSE notice for all the sources under cli.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce FeatureLayout interface (#1592)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 02:25:22 +0000 (11:25 +0900)]
[coco] Introduce FeatureLayout interface (#1592)

This commit introduces FeatureLayout interface, and revises
FeatureObject to depend on this new interface instead of
GenericFeatureLayout.

Besides, this commit also revises GenericFeatureLayout to inherit
FeatureLayout interface, which removes the need for external code
update.

This change allows us to impliment and use optimized FeatureLayouts to
speed up compilation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Update Index-to-Element link only via GenericFeatureLayout (#1591)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 01:43:46 +0000 (10:43 +0900)]
[coco] Update Index-to-Element link only via GenericFeatureLayout (#1591)

This commit adjusts the role of FeatureObject and GenericFeatureLayout
classes. Now, GenericFeatureLayout (not FeatureObject) is not responsible
for Index-to-Element link update.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Do NOT use reorder (in NNAPI backend) (#1589)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 01:09:18 +0000 (10:09 +0900)]
[enco] Do NOT use reorder (in NNAPI backend) (#1589)

This commit eliminates the use of reorder method (in FeatureObject) from
NNAPI backend implementation.

This change is prerequisite for coco IR design revision.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Do NOT use reorder inside Caffe frontend (#1588)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Sep 2018 01:09:10 +0000 (10:09 +0900)]
[enco] Do NOT use reorder inside Caffe frontend (#1588)

This commit eliminates the use of reorder method (in FeatureObject) from
caffe frontend implementation.

This change is prerequisite for coco IR design revision.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoThe first commit in the set of incremental commits for PRs adding the new ACL C+...
Тимур Отеллович Аблязимов/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 18:55:31 +0000 (21:55 +0300)]
The first commit in the set of incremental commits for PRs adding the new ACL C++ soft backend (#1583)

This commit adds the command line option for the new backend invokation and add the new backend library stub

Signed-off-by: Timur Ablyazimov <t.ablyazimov@samsung.com>
6 years agoRefactor nnc build system (#1584)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 18:32:09 +0000 (21:32 +0300)]
Refactor nnc build system (#1584)

* implement function to add nnc library

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoSupport pooling border type in soft backend (#1582)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Wed, 19 Sep 2018 17:46:32 +0000 (20:46 +0300)]
Support pooling border type in soft backend  (#1582)

Support two border types in avg pooling: ZEROFILLED and EMPTY
Only EMPTY type supported in max pooling

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years ago[nnc] Fix interpreter tests (#1581)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 19 Sep 2018 15:19:44 +0000 (18:19 +0300)]
[nnc] Fix interpreter tests (#1581)

Force borderType to be set to `ZEROFILLED` in pooling operator creation
Fix check for gtest availability( previosly was `getst` instead of `gtest` )
Add status message instead silent fail if tests cannot be build

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd interpreter support of different pooling types (#1580)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 19 Sep 2018 13:57:07 +0000 (16:57 +0300)]
Add interpreter support of different pooling types (#1580)

Add support of `zero filled` and `empty` padding fill in interpreter pooling

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd border type in pooling operation (#1579)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Wed, 19 Sep 2018 12:41:09 +0000 (15:41 +0300)]
Add border type in pooling operation (#1579)

* Add border type that describes content of pool input outside of it's shape
* Support this property in importers
* Fix warning in tflite_op_creator.cpp

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years agoAdd custom target to build unit tests from only nnc (#1576)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 10:58:56 +0000 (13:58 +0300)]
Add custom target to build unit tests from only nnc (#1576)

* add custom target to build all tests from only nnc
* add custom target to run all tests from only nnc

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years ago[coco] Externally Configurable GenericFeatureLayout (#1578)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 10:34:27 +0000 (19:34 +0900)]
[coco] Externally Configurable GenericFeatureLayout (#1578)

This commit allows users to replace the layout in FeatureObject with
their own (externally allocated) GenericFeatureLayout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Implement reorder in GenericFeatureLayout (#1577)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 10:34:19 +0000 (19:34 +0900)]
[coco] Implement reorder in GenericFeatureLayout (#1577)

This commit moves the actual implementation of reorder method from
FeaturObject into GenericFeatureLayout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Rename mock-up Bag::Updater (#1575)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 10:12:57 +0000 (19:12 +0900)]
[coco] Rename mock-up Bag::Updater (#1575)

Currently, its name is "Update" although it inherits "Bag::Updater".

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Generate reader/accessor per request (#1573)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 08:50:05 +0000 (17:50 +0900)]
[coco] Generate reader/accessor per request (#1573)

This commit revises PlainWeightContext to generate kernel
reader/accessor per request.

This allows PlainWeightContext to generate Object-specific reader and
accessor.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Remove ObjectInfo (#1569)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 08:48:52 +0000 (17:48 +0900)]
[coco] Remove ObjectInfo (#1569)

This commit removes all the reference of ObjectInfo from coco IR code
base as ObjectInfo is no longer used.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[caffegen] Remove deprecated Fill command (#1567)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 08:48:41 +0000 (17:48 +0900)]
[caffegen] Remove deprecated Fill command (#1567)

* [caffegen] Remove deprecated Fill command

This commit removes deprecated Fill command and related implementations
from caffegen.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix build error

6 years ago[coco] Introduce GenericFeatureLayout (#1565)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 08:47:58 +0000 (17:47 +0900)]
[coco] Introduce GenericFeatureLayout (#1565)

This commit introduces GenericFeatureLayout which is extracted from
FeatureObject. GenericFeatureLayout includes code related with mapping
from index to each Bag element.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRename target of system test for soft backend (#1574)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 08:22:56 +0000 (11:22 +0300)]
Rename target of system test for soft backend (#1574)

* Rename target of system test for soft backend

* replace target name `system_test_soft_backend_cpp_compile` with `nnc_system_test_soft_backend_cpp_compile`

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
* rename target of test executable

6 years ago[nnc] Initialize modelPacked field in TfliteImporter (#1566)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 07:50:53 +0000 (16:50 +0900)]
[nnc] Initialize modelPacked field in TfliteImporter (#1566)

This commit add an initializer for modelPacked filed in TfliteImporter.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove unused empty directories (#1571)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 07:12:55 +0000 (16:12 +0900)]
Remove unused empty directories (#1571)

This commit removes the following empty directories under libs:
 - frontend
   - caffe
   - tflite

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[refNN] Fix possible memory leak (#1563)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 06:44:54 +0000 (15:44 +0900)]
[refNN] Fix possible memory leak (#1563)

In the current implementation, allocated event object will be leaked
if startCompute failed.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] UseSet in Object (#1564)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 06:29:33 +0000 (15:29 +0900)]
[coco] UseSet in Object (#1564)

With this commit, Object (instead of ObjectInfo) is responsible for
its UseSet management.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Do NOT use deprecated Window2D methods in Caffe frontend (#1558)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:21:18 +0000 (13:21 +0900)]
[enco] Do NOT use deprecated Window2D methods in Caffe frontend (#1558)

This commit eliminates the use of deprecated methods in Window2D from
Caffe frontend implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Do NOT use deprecated Window2D methods in NNAPI backend (#1557)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:21:05 +0000 (13:21 +0900)]
[enco] Do NOT use deprecated Window2D methods in NNAPI backend (#1557)

This commit eliminates the use of deprecated methods in Window2D from
NNAPI backend implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Remove deprecated users method (#1556)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:20:55 +0000 (13:20 +0900)]
[coco] Remove deprecated users method (#1556)

This commit removes deprecated users method from Object, and revises
related implementations.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[RefNN] Add missing break in Executor (#1561)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:20:46 +0000 (13:20 +0900)]
[RefNN] Add missing break in Executor (#1561)

'break' is missing at the end of "ADD" case currently.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Mark mutable fields as private (#1560)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:20:12 +0000 (13:20 +0900)]
[coco] Mark mutable fields as private (#1560)

This commit marks deps, reads, and updates methods in Bag as private
after renaming.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Add caffe 016 test (#1554)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 04:16:14 +0000 (13:16 +0900)]
[enco] Add caffe 016 test (#1554)

This commit adds caffe 016 test which includes a group convolution layer
(which simulates depthwise convolution).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd top-level LICENSE file (#1550)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Sep 2018 02:19:08 +0000 (11:19 +0900)]
Add top-level LICENSE file (#1550)

The purpose of LICENSE is to provide full text of license that the
corresponding source contains only partial and/or link to full text.

LICENSE currently contains Apache License 2.0 which our own sources
and imported reference android NN runtime use.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoImport pads from caffe model directly (#1545)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Tue, 18 Sep 2018 14:26:09 +0000 (17:26 +0300)]
Import pads from caffe model directly (#1545)

Do not inference paddings in ShapeInference, instead use numbers from model

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years ago[enco] Android NN DCONV2D operation generation (#1553)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 11:26:12 +0000 (20:26 +0900)]
[enco] Android NN DCONV2D operation generation (#1553)

* [enco] Android NN DCONV2D operation generation

With this commit, Android NN IR builder in enco NNAPI backend is now
able to build DCONV2D operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix build error

6 years ago[enco] Configure convolution group parameter (#1552)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 10:33:55 +0000 (19:33 +0900)]
[enco] Configure convolution group parameter (#1552)

This commit revises enco caffe frontend to update coco IR's group
parameter according to caffe model.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Manage Def in Object (#1532)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 10:28:45 +0000 (19:28 +0900)]
[coco] Manage Def in Object (#1532)

* [coco] Manage Def in Object

This commit moves Def field and related methods from ObjectInfo into
Object.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update comment

6 years ago[coco] Remove BagInfo (#1536)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 09:47:29 +0000 (18:47 +0900)]
[coco] Remove BagInfo (#1536)

This commit removes all the reference of deprecated BagInfo from coco IR
codebase.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Introduce Shuffle::size method (#1539)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 09:42:29 +0000 (18:42 +0900)]
[coco] Introduce Shuffle::size method (#1539)

* [coco] Introduce Shuffle::size method

This commit introduces Shuffle::size method which allows us to get the
number of element-wise transfers without using heavy range method.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Check invariant over size() and range()

6 years ago[coco] Use InstrManagerTest fixture for create_UnitF (#1529)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 08:18:07 +0000 (17:18 +0900)]
[coco] Use InstrManagerTest fixture for create_UnitF (#1529)

This commit rewrites create_UnitF test using InstrManagerTest
fixture.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] UseSet for Object (#1528)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 08:17:59 +0000 (17:17 +0900)]
[coco] UseSet for Object (#1528)

This commit revises ObjectInfo to maintain a set of Use(s) for each
object along with a set of Consumer(s).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[caffegen] Do NOT depend on nncc_foundation (#1548)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 08:01:52 +0000 (17:01 +0900)]
[caffegen] Do NOT depend on nncc_foundation (#1548)

This commit replaces all the use of nncc::foundation::make_unique with
stdex::make_unique in order to eliminate nncc_foundation dependency.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] ANN Op CodeGen (#1547)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 08:01:37 +0000 (17:01 +0900)]
[enco] ANN Op CodeGen (#1547)

This commit extends opcode implementation for DEPTHWISE_CONV_2D op.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] IR entities-to-Module link (#1546)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 08:01:29 +0000 (17:01 +0900)]
[coco] IR entities-to-Module link (#1546)

With this commit, each IR entity allocated via EntityManager will have a correct
link to a module that it belongs to.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Unify Compatiblity Check and ANN IR Builder (#1534)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Sep 2018 06:41:57 +0000 (15:41 +0900)]
[enco] Unify Compatiblity Check and ANN IR Builder (#1534)

This commit revises ANNOpBuilder to return Appender for a given
instruction instead of appending it.

This change allows us to unify independent CompatibilityCheck into
ANNOpBuilder.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agofeature: add multiple interpreter outputs (#1543)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 17 Sep 2018 19:15:57 +0000 (22:15 +0300)]
feature: add multiple interpreter outputs (#1543)

--res-filename removed redundant
--output-dir used for outputs
--output-node can take multiple values

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoImplement batch norm as scale and bias (#1542)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Mon, 17 Sep 2018 17:53:09 +0000 (20:53 +0300)]
Implement batch norm as scale and bias (#1542)

Replace batch norm with scale and bias operations in caffe importer

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years agoFix naming of soft backend files (#1477)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Mon, 17 Sep 2018 16:58:29 +0000 (19:58 +0300)]
Fix naming of soft backend files (#1477)

Replace old_c_style with CamelCase style in pure soft backend file names

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years agoFix Importer bug (#1541)
Андрей Шедько/AI Tools Lab /SRR/Assistant Engineer/삼성전자 [Mon, 17 Sep 2018 14:37:15 +0000 (17:37 +0300)]
Fix Importer bug (#1541)

Found when testing 1 op models: `Im2Col` Layer uses the convolution parameter, as does
the `Deconvolution` (or `TransposedConvolution` layer). This resolves the issue.

Signed-off-by: Andrei Shedko <a.shedko@partner.samsung.com>
6 years agoSupport new type of option value (#1504)
Роман Михайлович Русяев/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 13:14:05 +0000 (16:14 +0300)]
Support new type of option value (#1504)

* support `std::vector<std::string>` type for option
* support multiple values for option in command line parser
* write unit test for new functionality

Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
6 years agoAdd shape correctness check (#1485)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Mon, 17 Sep 2018 11:38:11 +0000 (14:38 +0300)]
Add shape correctness check (#1485)

Check that shapes of input tensors are correct in artifact setters

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years ago[coco] Store size in Bag (#1531)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 10:02:07 +0000 (19:02 +0900)]
[coco] Store size in Bag (#1531)

This commit revises Bag to store its size in it. This is a step toward
Bag/BagInfo unification.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Explicit Input/Output link from Bag (#1526)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 09:56:25 +0000 (18:56 +0900)]
[coco] Explicit Input/Output link from Bag (#1526)

This commit revises Bag class to maintain explicit Input/Output link (to
make it easy to manipulate).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[enco] Declare ANNOpBuilder before ANNGroupBuilder (#1524)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 09:29:12 +0000 (18:29 +0900)]
[enco] Declare ANNOpBuilder before ANNGroupBuilder (#1524)

As stated in the title, this commit declares (and implements) ANNOpBuilder
before ANNGroupBuilder (to use ANNOpBuilder inside ANNGroupBuilder
later).

This commit includes no change over implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Do NOT use Object-to-ObjectInfo link (#1527)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 08:13:02 +0000 (17:13 +0900)]
[coco] Do NOT use Object-to-ObjectInfo link (#1527)

Def and Use classes are now able to access the internals of Object
without using Object-to-ObjectInfo link.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[coco] Do NOT use Op-to-Instr link (#1525)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Sep 2018 07:38:44 +0000 (16:38 +0900)]
[coco] Do NOT use Op-to-Instr link (#1525)

coco no longer uses Op-to-Instr link as a mean to manage Op-to-Instr
relations.

This commit removes all the use of Op-to-Instr link in coco IR codebase.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>