platform/core/ml/nnfw.git
6 years agoIntroduce 'nncc_coverage' interface target (#335)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 14 Jun 2018 09:20:05 +0000 (18:20 +0900)]
Introduce 'nncc_coverage' interface target (#335)

This commit introduces 'nncc_coverage' interface target which propagates
compilation options for coverage build, and use it to simplify add_nncc_library
implementation.

It is possible to eliminate unnecessary link statement (to libc) inside
add_nncc_library with this commit.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: fix console params parsing (#326)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 13 Jun 2018 12:18:13 +0000 (15:18 +0300)]
nnc: fix console params parsing (#326)

fix wrong single params parsing
(params like '-a', '-f')

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoUpdate visitor to support available operations (#320)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 8 Jun 2018 13:13:16 +0000 (17:13 +0400)]
Update visitor to support available operations (#320)

Update visitor to support available operations

Updates visitor base class to support currently implemented operations

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoFix "enumeration values not handled in switch" warning (#323)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 8 Jun 2018 12:23:48 +0000 (15:23 +0300)]
Fix "enumeration values not handled in switch" warning (#323)

This commit fixes the warning that appears if not all enum values are
handled in a switch.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agonnc: Fix stream output operator (#316)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 8 Jun 2018 07:43:22 +0000 (10:43 +0300)]
nnc: Fix stream output operator (#316)

fix stream output for PluginManager AbstractModule classes

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: PluginManager make code more consistent (#317)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 8 Jun 2018 07:42:52 +0000 (10:42 +0300)]
nnc: PluginManager make code more consistent (#317)

This commit for consistent "auto" using

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoFix CaffeProto CMake warning (#305)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 7 Jun 2018 11:05:46 +0000 (20:05 +0900)]
Fix CaffeProto CMake warning (#305)

This commit fixes CMake warning emitted when DOWNLOAD_CAFFE is disabled.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: Implement nnc common realisation (#277)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 6 Jun 2018 07:17:50 +0000 (10:17 +0300)]
nnc: Implement nnc common realisation (#277)

nnc: Implement nnc skeleton

This commit implements nnc with activated frontend and backend
modules

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Fix PluginProxy interface (#309)
Vitaliy Cherepanov/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 6 Jun 2018 07:14:32 +0000 (10:14 +0300)]
nnc: Fix PluginProxy interface (#309)

This commit is to fix common plugin interface.

There are some problems to return std::shared_ptr by library "C" interface
also AbstractPluginInstance and plugin *PluginInstance (like SamplePluginInstance) should be a
singleton and std::shared_ptr is unnecessary there.

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoFix compiler warnings in Graph and Node classes (#314)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:52:30 +0000 (19:52 +0400)]
Fix compiler warnings in Graph and Node classes (#314)

Reorder initialization list to match declaration order
Set node input pins with respect to inputIndex given

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agonnc example: fix SamplePluginInstance copy and assignment (#313)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:50:58 +0000 (18:50 +0300)]
nnc example: fix SamplePluginInstance copy and assignment (#313)

This commit delete copy and assignment operator
from singleton plugin instance example class

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: fix AbstractPluginInstance copy and assignment operator (#312)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:50:20 +0000 (18:50 +0300)]
nnc: fix AbstractPluginInstance copy and assignment operator (#312)

This commit delete copy and assignment operator
from singleton base class

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoFix compiler warnings in TensorVariant class (#311)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:49:32 +0000 (19:49 +0400)]
Fix compiler warnings in TensorVariant class (#311)

Make constructor initilization list order match declaration order
Add missing virtual destructor

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoFix compiler warnings in operation descriptions (#310)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:48:58 +0000 (19:48 +0400)]
Fix compiler warnings in operation descriptions (#310)

Fixes compiler warnings in PoolOp and OpDescription classes
Add missing OpDescription virtual destructor

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc] Fix operation description namespace issues (#308)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 15:48:10 +0000 (19:48 +0400)]
[nnc] Fix operation description namespace issues (#308)

This commit fixes compilation errors introduced by switch to clang-7

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agonnc: Implement BackendModule class (#276)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 10:43:33 +0000 (13:43 +0300)]
nnc: Implement BackendModule class (#276)

nnc: Implement BackendModule class

This commit implements BackendModule class

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Implement FrontendModule class (#275)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 10:43:00 +0000 (13:43 +0300)]
nnc: Implement FrontendModule class (#275)

nnc: Implement FrontendModule class

This commit implements FrontendModule class

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: fix AbstractModule copy and assignment operator (#307)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 10:28:08 +0000 (13:28 +0300)]
nnc: fix AbstractModule copy and assignment operator (#307)

nnc: fix AbstractModule copy and assignment operator

This commit delete copy and assignment operator
from singleton base class

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoFix issue "no return statement in function return non-void" (#304)
Sergey Vostokov/AI Tools Lab/Staff Engineer/삼성전자 [Tue, 5 Jun 2018 09:01:04 +0000 (12:01 +0300)]
Fix issue "no return statement in function return non-void" (#304)

Fix issue "no return statement in function return non-void"

This commit fix issue for two classes nncc:core:ADT:tensor:Index::resize() and
nncc::core::ADT::tensor::Shape::resize()

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
6 years agoFix error "returning reference to temporary" (#302)
Sergey Vostokov/AI Tools Lab/Staff Engineer/삼성전자 [Tue, 5 Jun 2018 08:39:38 +0000 (11:39 +0300)]
Fix error "returning reference to temporary" (#302)

This commit fixes issue when member function returns
reference to the local variable.

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
6 years agoprotect AbstractModule class methods (#301)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 08:32:51 +0000 (11:32 +0300)]
protect AbstractModule class methods (#301)

AbstractModule will be used as base class for
module singletons

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Implement plugin example (#278)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Tue, 5 Jun 2018 08:30:42 +0000 (11:30 +0300)]
nnc: Implement plugin example (#278)

nnc: Implement plugin example

This commit show how to create plugin for nnc

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years ago[nnc] Add backend directory (#300)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Mon, 4 Jun 2018 23:06:37 +0000 (03:06 +0400)]
[nnc] Add backend directory (#300)

This directory is used to store backend plugins sources. (e.g. code emitter, interpreter)

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnkit] Build registry library (#290)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 4 Jun 2018 23:05:57 +0000 (08:05 +0900)]
[nnkit] Build registry library (#290)

'libs/CMakeLists.txt' does not include registry directory, and thus
registry libraries are not built currently.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd Graph class (#297)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Mon, 4 Jun 2018 13:53:09 +0000 (17:53 +0400)]
Add Graph class (#297)

Add Graph class

This class is used to represent computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Variable operation class (#296)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Mon, 4 Jun 2018 13:30:22 +0000 (17:30 +0400)]
Add Variable operation class (#296)

This class is used to represent input node in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agonnc: Implement PluginManager class (#273)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Mon, 4 Jun 2018 09:50:08 +0000 (12:50 +0300)]
nnc: Implement PluginManager class (#273)

nnc: Implement PluginsManager class

This class will search, load, initialize plugins and
delegate plugins to modules by plugin type

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years ago[foundation] Do NOT allow copy/move on OwnedRegion (#299)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 4 Jun 2018 07:09:51 +0000 (16:09 +0900)]
[foundation] Do NOT allow copy/move on OwnedRegion (#299)

As its name suggestes, OwnedRegion should not be copied.

OwnedRegion should be moveable simialrly as std::unique_ptr<T>,
but the current implementation sets '_base' field as const field,
so it is impossible to implement move constructor.

As a workaround, this commit  disables move on Owned Region
temporarily.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[cli] Add 'FunctionCommand' class (#292)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 4 Jun 2018 01:01:49 +0000 (10:01 +0900)]
[cli] Add 'FunctionCommand' class (#292)

This commit adds 'FunctionCommand' class which allows us to use pure
function as a command.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd :/cmake-build-* and :/.idea to .gitignore (#295)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Sun, 3 Jun 2018 23:37:14 +0000 (03:37 +0400)]
Add :/cmake-build-* and :/.idea to .gitignore (#295)

SRR team uses clion as a main IDE for development and it's more convinient to have IDE artefacts ignored

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd FullyConnected layer desсription class (#285)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:24:07 +0000 (18:24 +0400)]
Add FullyConnected layer desсription class (#285)

Add FullyConnected layer desсription class

This class is used to represent a fully connected layer in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Relu operation desсription class (#287)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:13:15 +0000 (18:13 +0400)]
Add Relu operation desсription class (#287)

Add Relu operation desription class

This class is used to represent relu operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Pool operation description (#286)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:12:50 +0000 (18:12 +0400)]
Add Pool operation description (#286)

Add Pool operation desription class

This class is used to represent pool operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd DepthwiseConv2D operation description (#284)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:12:17 +0000 (18:12 +0400)]
Add DepthwiseConv2D operation description (#284)

Add DepthwiseConv2D operation description

This class is used to represent Depthwise Convolution operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Conv2D operation desсription class (#280)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:11:48 +0000 (18:11 +0400)]
Add Conv2D operation desсription class (#280)

Add Conv2D operation desription class

This class is used to represent 2d convolution operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd CappedRelu operation description class (#272)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 14:11:10 +0000 (18:11 +0400)]
Add CappedRelu operation description class (#272)

* Add CappedRelu operation description class

This class used to represent capped relu operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Softmax operation description (#294)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 12:29:53 +0000 (16:29 +0400)]
Add Softmax operation description (#294)

This class is used to represent softmax operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd BiasAdd operation description class (#271)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 12:25:23 +0000 (16:25 +0400)]
Add BiasAdd operation description class (#271)

Add BiasAdd operation description class

This class used to represent bias addition in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Concat operation description class (#279)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 12:23:31 +0000 (16:23 +0400)]
Add Concat operation description class (#279)

This class is used to represent concatenation operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agonnc: make isOptional method const (#293)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 11:29:09 +0000 (14:29 +0300)]
nnc: make isOptional method const (#293)

This commit makes getter const

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Implement AbstractModule class (#268)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 10:27:21 +0000 (13:27 +0300)]
nnc: Implement AbstractModule class (#268)

nnc: implement AbstractModule class

This commit implements base module class.

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Implement PluginProxy class (#267)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 10:14:22 +0000 (13:14 +0300)]
nnc: Implement PluginProxy class (#267)

nnc: implement PluginProxy class

this is base class to load pluggin

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Implement AbstractPluginInstance class (#266)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Fri, 1 Jun 2018 07:36:36 +0000 (10:36 +0300)]
nnc: Implement AbstractPluginInstance class (#266)

nnc: implement AbstractPluginInstance class

Virtual plugin instance class.
Provides basic API for communication between plugin and nnc

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years ago[core] Add Tensor View (#281)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 1 Jun 2018 06:54:25 +0000 (15:54 +0900)]
[core] Add Tensor View (#281)

This commit introduces 'nncc::core::ADT::tensor::View' class which
allows users to interpret a memory region as a tensor with a specified
shape and layout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core] Add 'num_elements' on kernel shape (#253)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 31 May 2018 23:51:59 +0000 (08:51 +0900)]
[core] Add 'num_elements' on kernel shape (#253)

This commit adds 'num_elements' for kernel shape similarly as
'num_elements' for tensor shape.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core] Add 'num_elements' on feature shape (#252)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 31 May 2018 23:46:32 +0000 (08:46 +0900)]
[core] Add 'num_elements' on feature shape (#252)

This commit adds 'num_elements' for feature shape similarly as 'num_elements'
for tensor shape.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd TFLite IR visitor skeleton (#274)
Dmitry Mozolev/AI Tools Lab/Engineer/삼성전자 [Thu, 31 May 2018 13:03:45 +0000 (16:03 +0300)]
Add TFLite IR visitor skeleton (#274)

Add TFLite IR visitor skeleton

Adds skeleton for the TFLite IR visitor,
additionally saves pointers to some useful model contents.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoIntroduce 'nncc_include' (#263)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 31 May 2018 09:37:54 +0000 (18:37 +0900)]
Introduce 'nncc_include' (#263)

This commit introduces 'nncc_include' macro which allows users to write
and use useful nncc-internal CMake modules.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT] Add tensor::Layout interface (#244)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 May 2018 23:17:48 +0000 (08:17 +0900)]
[core.ADT] Add tensor::Layout interface (#244)

This commit adds tensor::Layout interface, and tensor::LexicalLayout class
which implements Layout interfaces.

Layout interface provides 'offset' method which returns an offset of each element
in flat array, and LexicalLayout assigns this offset following lexicographical order.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce a way to support all TFLite versions in one library (#172)
Dmitry Mozolev/AI Tools Lab/Engineer/삼성전자 [Wed, 30 May 2018 13:54:11 +0000 (16:54 +0300)]
Introduce a way to support all TFLite versions in one library (#172)

* Introduce a way to support all TFLite versions in one library

It is not obvious how to support all TFLite model versions in one
library, and this commit changes the structure of the code to show
how other tflite versions can be accommodated.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoAdd TensorVariant class (#254)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Wed, 30 May 2018 11:32:37 +0000 (15:32 +0400)]
Add TensorVariant class (#254)

Add TensorVariant class

This class is used to store and pass raw data

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoUse caffeproto instead of nncc_frontend_caffe_core (#257)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 30 May 2018 08:43:05 +0000 (17:43 +0900)]
Use caffeproto instead of nncc_frontend_caffe_core (#257)

nncc_frontend_caffe_core is currently almost same as caffeproto.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce 'nnkit_registry_backend' (#258)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 30 May 2018 07:39:22 +0000 (16:39 +0900)]
[nnkit] Introduce 'nnkit_registry_backend' (#258)

* [nnkit] Introduce 'nnkit_registry_backend'

This commit introduces 'nnkit_registry_backend' library which servers as
a global registry on various backends.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Leave a comment on thread safety

* Update comment

6 years agoAdd Caffe proto reader (#255)
Dmitry Mozolev/AI Tools Lab/Engineer/삼성전자 [Tue, 29 May 2018 14:13:58 +0000 (17:13 +0300)]
Add Caffe proto reader (#255)

Add Caffe proto reader

Both reading from binary and from text files is supported.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoAdd IRNode class (#256)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Tue, 29 May 2018 13:24:26 +0000 (17:24 +0400)]
Add IRNode class (#256)

Add IRNode class

This class used to represent single operation in computation graph along with its connections

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd 'cli' library (#249)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 29 May 2018 08:05:45 +0000 (17:05 +0900)]
Add 'cli' library (#249)

This commit introduces 'cli' library (under contrib/) and rewrites
caffegen, caffekit, tflitekit tools using newly introduced 'cli'
library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: implement PluginSession class (#248)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Mon, 28 May 2018 12:30:49 +0000 (15:30 +0300)]
nnc: implement PluginSession class (#248)

nnc: implement PluginSession class

This class will be used for nnc and plugins communication

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: implement PluginData class (#247)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Mon, 28 May 2018 12:11:35 +0000 (15:11 +0300)]
nnc: implement PluginData class (#247)

nnc: implement PluginData class

This class will be used for command line arguments parsing and
and interact it with plugin params

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoMove ir_node.h according to changes from #158 (#260)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Fri, 25 May 2018 14:27:50 +0000 (18:27 +0400)]
Move ir_node.h according to changes from #158 (#260)

PR #158 renamed nnc_core into core and changed include directory structure
This commit moves ir_node.h according with these changes

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd template of High-Level Design document (#261)
Sergey Vostokov/AI Tools Lab/Staff Engineer/삼성전자 [Fri, 25 May 2018 09:25:19 +0000 (12:25 +0300)]
Add template of High-Level Design document (#261)

Template of High-Level Design Document v1.0

6 years agoSW Requirements Specification v1.0 (#70)
Sergey Vostokov/AI Tools Lab/Staff Engineer/삼성전자 [Fri, 25 May 2018 09:18:56 +0000 (12:18 +0300)]
SW Requirements Specification v1.0 (#70)

SW Requirements Specification v1.1

6 years agoSW Development Document v1.0 (#79)
Sergey Vostokov/AI Tools Lab/Staff Engineer/삼성전자 [Fri, 25 May 2018 08:38:33 +0000 (11:38 +0300)]
SW Development Document v1.0 (#79)

* Add initial version of SW Development Document

This commit adds the initial version for SW Development Document.

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Add "support of Caffe/Caffe2" to title of SDD

This commit adds "support of Caffe/Caffe2" to the title of
the document SW Development Document

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Update format of SDD to fix errors

This commit fixes format errors of SDD

* Update revision table for SDD

This commits add revision number after SE Team review

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Fix typos in SDD

This commit fixes typos (NN Model -> NN model, etc) in SDD

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Change clang to gcc/g++, and DaRT to SVACE in SDD

This commit changes tools to get SW Metrics in SDD

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Update Project plan in SDD

This commit updates project plan and baseline in SDD

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Remove Reference section for SDD

This commit removes Reference section and commpetitors enumeration
from SDD. This information would be put in other document.

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Remove duplication of Reference and Competitors section

There were duplications of Reference and Competitors section
at the end of document. This commit removes them.

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
6 years ago[nncc.core] Reduce directory nesting level (#259)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 25 May 2018 07:45:08 +0000 (16:45 +0900)]
[nncc.core] Reduce directory nesting level (#259)

This commit relocates "libs/core/src/nncc/core/ADT" into "libs/core/src/ADT"
to be consistent with nncc.foundation in terms of directory layout.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoDo not use plain signature on target_link_library (#242)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 25 May 2018 00:12:06 +0000 (09:12 +0900)]
Do not use plain signature on target_link_library (#242)

From 2.8.12, CMake disallow the mix of plain and keword
target_link_libraries signature (CMP0023).

This policy results in cmake configuration failure when BUILD_COVERAGE
is turned on.

This commit revises add_nncc_library in order to enforce the use of keyword
signature (e.g. PUBLIC) for following target_link_library calls.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: move plugin exceptions to plugin lib (#243)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Thu, 24 May 2018 14:10:57 +0000 (17:10 +0300)]
nnc: move plugin exceptions to plugin lib (#243)

* nnc: move plugin exceptions to plugin lib

This commit move config and plugin exceptions
to common plugin lib

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: create AbstractSession class (#246)
Vitaliy Cherepanov/AI Tools Lab/Engineer/삼성전자 [Thu, 24 May 2018 14:09:30 +0000 (17:09 +0300)]
nnc: create AbstractSession class (#246)

nnc: create AbstractSession class

This class will be used for plugin and nnc communication

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoAdd class "IR::model::OpDescription" (#158)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Thu, 24 May 2018 14:06:16 +0000 (17:06 +0300)]
Add class "IR::model::OpDescription" (#158)

* Add class "IR::model::OpDescription"

This commits adds "IR::model::OpDescription" class which used to represent any operation in computation graph

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
* Fix minor issues

Add missing newline in CMakeLists.txt
Fix newline after contrib::core::IR::model namespace

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
* Fix issues

Remove duplicate check after assert
Add const where applicable

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
* Rename nnc_core into core

Update includes structure to evade header collisions
Update CMakeLists.txt

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd TFLite v3 model console dumper (#171)
Dmitry Mozolev/AI Tools Lab/Engineer/삼성전자 [Thu, 24 May 2018 13:27:33 +0000 (16:27 +0300)]
Add TFLite v3 model console dumper (#171)

Using visitor interface to print TFLite v3 model contents.
Not all content is printed so far, but the code can easily be extended.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoAdd model IR visior (#173)
Vladimir Plazun/AI Tools Lab/Engineer/삼성전자 [Thu, 24 May 2018 13:11:36 +0000 (16:11 +0300)]
Add model IR visior (#173)

Add "IR::mode::Visitor" class. Which is used as base for IR traversal

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnkit] Introduce backend interface (#251)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 24 May 2018 08:10:08 +0000 (17:10 +0900)]
[nnkit] Introduce backend interface (#251)

This commit introduces 'nnkit::Backend' and 'nnkit::BackendFactory'
interfaces which abstracts various NN frameworks.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce 'CmdlineArgument' interface (#250)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 24 May 2018 01:29:07 +0000 (10:29 +0900)]
[nnkit] Introduce 'CmdlineArgument' interface (#250)

This commit introduces 'nnkit::CmdlineArguments' interface which allows
each backend/action to access cmdline arguments provided by users.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce 'TensorContext' interface (#240)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 23 May 2018 23:48:58 +0000 (08:48 +0900)]
[nnkit] Introduce 'TensorContext' interface (#240)

* [nnkit] Introduce 'TensorContext' interface

This commit introduces 'nnkit::TensorContext' interface which all nnkit
actions and backends will use.

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

6 years ago[nncc.foundation] Add 'Region' classes (#239)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 23 May 2018 06:46:29 +0000 (15:46 +0900)]
[nncc.foundation] Add 'Region' classes (#239)

This commit introduces Region interface which denotes a typed contigious
memory block, and adds OwnedRegion and ExternalRegion which implements
this 'Region' interface.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce nnkit_add_action and nnkit_add_backend (#238)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 23 May 2018 06:45:41 +0000 (15:45 +0900)]
Introduce nnkit_add_action and nnkit_add_backend (#238)

This commit introduces nnkit_add_action and nnkit_add_backend macros
which passes --whole-archive linker option to permit self-registration.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd 'nnkit' project (#236)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 23 May 2018 00:24:33 +0000 (09:24 +0900)]
Add 'nnkit' project (#236)

This commit adds 'nnkit' project which will includes various tools for
using NN frameworks in one common interface.

This commit currently introduces a dummy implementation of 'nni'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: plugin common lib (Plugin type) (#233)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Tue, 22 May 2018 23:11:12 +0000 (02:11 +0300)]
nnc: plugin common lib (Plugin type) (#233)

* nnc: plugin common lib (Plugin type)

This commit creates common plugin library.
This library will be used by plugins and nnc for communication.

Implemented:
  - Plugin type. Will be used to determinate plugin type and
    for debug also.

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: plugin common lib (Plugin type)

rename typeWrong to typeInvalid
using switch case
add to make file

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: plugin common lib (Plugin type)

make code readable

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* remove HLO and LLO from plugin types

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: plugin common lib (Plugin type)

fix build

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: plugin common lib (Plugin params) (#234)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Tue, 22 May 2018 23:02:24 +0000 (02:02 +0300)]
nnc: plugin common lib (Plugin params) (#234)

This library will be used by plugins and nnc for communication.

Implemented:
  - Plugin params. Will be used to declare plugin neccessary
    configuration parameters.

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: Create plugin exception class (#232)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Tue, 22 May 2018 23:02:10 +0000 (02:02 +0300)]
nnc: Create plugin exception class (#232)

Created plugin exceptions class.
This class will be used by compiler components like
frontend, optimizers, backend to inform main compiler
part about internal plugin problems during compilation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoAdd TFLite model visiting mechanism (#170)
Dmitry Mozolev/SRR-AI Tools Lab/./삼성전자 [Tue, 22 May 2018 23:01:52 +0000 (02:01 +0300)]
Add TFLite model visiting mechanism (#170)

* Add TFLite model visiting mechanism

Two main things added:

- TFLite model visitor interface
- Code for iterating over the model contents (walker)

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
* Change class names

6 years agoAdd TFLite v3 format parser (#169)
Dmitry Mozolev/SRR-AI Tools Lab/./삼성전자 [Tue, 22 May 2018 23:00:59 +0000 (02:00 +0300)]
Add TFLite v3 format parser (#169)

* Add TFLite v3 format parser

Just using flatbuffers library to get access
to the handle for .tflite version 3 model contents.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
* Add meta info about flatbuffers schemas

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years ago[nncc.foundation] Add 'absolute_epsilon_equal' (#235)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 18 May 2018 08:23:33 +0000 (17:23 +0900)]
[nncc.foundation] Add 'absolute_epsilon_equal' (#235)

This commit introduces nncc::foundation::math::absolute_epsilon_equal,
which compares two float values and returns true if their absolute diff
is less than a specified threshold expressed as a multiple of machine
epsilon.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT.tensor] Squeeze Tensor Shape correctly. (#226)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 18 May 2018 00:09:02 +0000 (09:09 +0900)]
[core.ADT.tensor] Squeeze Tensor Shape correctly. (#226)

Squeeze operation (in TensorFlow) removess axises whose dimensionality
is 1, but the current squeeze operation eliminates if their dimensionality
is null.

This commit fixes this mismatch on the semantics of squeeze operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nncc.foundation] Add 'relative_epsilon_equal' (#227)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 18 May 2018 00:08:54 +0000 (09:08 +0900)]
[nncc.foundation] Add 'relative_epsilon_equal' (#227)

This commit introduces nncc::foundation::math::relative_epsilon_equal,
which compares two float values and returns true if their relative diff
is less than a specified threshold expressed as a multiple of machine
epsilon.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT.tensor] Add 'Accessor' interface (#231)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 18 May 2018 00:08:45 +0000 (09:08 +0900)]
[core.ADT.tensor] Add 'Accessor' interface (#231)

This commit introduces 'Accessor<T>' interface over tensor values.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agonnc: dynamic library interface (#228)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Thu, 17 May 2018 08:38:47 +0000 (11:38 +0300)]
nnc: dynamic library interface (#228)

* nnc: dynamic library interface

This commit implements interface for loading dynamic libraries
and calling its interfaces.

This functional will be used to load and communicate with plugins.

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

move sources to contrib/nnc

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

fix namespaces and code style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

fix build

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

add info to "<<" operator

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

fix issues

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: dynamic library interface

fix issues

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years ago[core.ADT.tensor] Add 'num_elements' function (#217)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 16 May 2018 23:45:55 +0000 (08:45 +0900)]
[core.ADT.tensor] Add 'num_elements' function (#217)

* [core.ADT.tensor] Add 'num_elements' function

This commit adds 'num_elemnets' function which takes a tensor shape and
returns the number of elements in a tensor of the given shape.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Return 0 when null dimension exists

6 years agoRelocate and rename BaseException (#225)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Wed, 16 May 2018 23:43:41 +0000 (08:43 +0900)]
Relocate and rename BaseException (#225)

* Relocate and rename BaseException

This commit relocates code related BaseException for consistency,
and renames it as 'Exception'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Rewrite ConfigException in nnc

6 years agoAdd flatbuffers schema compilation function (#229)
Dmitry Mozolev/SRR-AI Tools Lab/./삼성전자 [Wed, 16 May 2018 23:36:24 +0000 (02:36 +0300)]
Add flatbuffers schema compilation function (#229)

* Add flatbuffers schema compilation function

Now it is possible to compile flatbuffers schemas with a cmake function

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
* Change var names

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agofoundation nnc config exception (#204)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Wed, 16 May 2018 10:35:19 +0000 (13:35 +0300)]
foundation nnc config exception (#204)

* Core: Create base exception classes

Created base exceptions classes.
This classes will be used by compiler components like
frontend, optimizers, backend to inform main compiler
part about some problems during compilation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* core: Create base exception classes

move libs/core/.../plugin to libs/foundation/.../plugin

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception classe

split class methods realisation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

fix format coding style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

this commit to fix PR

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create config exception class

This class will be used to signalize about some configuration errors
like bad parametrs

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create config exception class

Fix build for gcc compiler

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create config exception class

move config exception to contrib

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create config exception class

fix build. Add linking with nncc_foundation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: Create config exception class

change namespace to nncc::contrib::

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: Create config exception class

This commit to fix coding style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* nnc: Create config exception class

This commit to fix coding style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoAdd NN importer interface and memory mapper (#168)
Dmitry Mozolev/SRR-AI Tools Lab/./삼성전자 [Wed, 16 May 2018 08:23:36 +0000 (11:23 +0300)]
Add NN importer interface and memory mapper (#168)

* Add NN importer interface and memory mapper

This commit adds common code needed by NN model importers which is

- abstract interface for NN model importers targeting CPU/GPU (possibly
  also will be ok for DSP/NPU)
- code for memory mapped access of NN model files to avoid unnecessary
  data copying (trained NN models can be large)

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
* Add NN importer interface and memory mapper

Change namespace names

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoFind GLog via internal script (#219)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 15 May 2018 04:05:02 +0000 (13:05 +0900)]
Find GLog via internal script (#219)

This commit revises Caffe external module to lookup GLof using
nncc_find_package instead of find_package.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUnify nncc_example_link_libraries and nncc_test_link_libraries (#220)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Tue, 15 May 2018 04:04:54 +0000 (13:04 +0900)]
Unify nncc_example_link_libraries and nncc_test_link_libraries (#220)

* Unify nncc_example_link_libraries and nncc_test_link_libraries

This commit introduces nncc_target_link_libraries function which unifies
nncc_example_link_libraries and nncc_test_link_libraries.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use NAME instead of TARGET as an argument

6 years agofoundation: Create base exception classes (#165)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Mon, 14 May 2018 23:19:59 +0000 (02:19 +0300)]
foundation: Create base exception classes (#165)

* Core: Create base exception classes

Created base exceptions classes.
This classes will be used by compiler components like
frontend, optimizers, backend to inform main compiler
part about some problems during compilation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* core: Create base exception classes

move libs/core/.../plugin to libs/foundation/.../plugin

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception classe

split class methods realisation

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

fix format coding style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

this commit to fix PR

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

this commit to fix PR
refactor BaseException class
fix build

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

this commit to fix PR
fix include
add gtest

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* foundation: Create base exception class

fix coding style

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agonnc: initial commit (#161)
Vitaliy Cherepanov/SRR-AI Tools Lab/./삼성전자 [Mon, 14 May 2018 23:19:37 +0000 (02:19 +0300)]
nnc: initial commit (#161)

* tools nncc: compiler initial commit

Create makefiles and main for compiler

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* tools nncc: compiler initial commit

Move tools/nncc to contrib/tools/

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* tools nncc: compiler initial commit

code clean remove unused code

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* tools nncc: compiler initial commit

Move contrib/tools/nncc to contrib/nnc
rename cl to nnc

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
* tools nnc: compiler initial commit

private nncc_core library target link

Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
6 years agoAllow FlatBuffers source download by default (#222)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Mon, 14 May 2018 03:17:54 +0000 (12:17 +0900)]
Allow FlatBuffers source download by default (#222)

This commit allows users to download (and build) FlatBuffers by default.
This commit also revises docker build script to pass FLATBUFFERS_URL
(which is necessary to allow CI to download and build FlatBuffers).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFind GFlags via internal script when building Caffe (#218)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Fri, 11 May 2018 05:48:02 +0000 (14:48 +0900)]
Find GFlags via internal script when building Caffe (#218)

This commit revises Caffe external module to lookup GFlags using
nncc_find_package instead of find_package.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd glog target cmake configure file (#216)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 10 May 2018 23:57:28 +0000 (08:57 +0900)]
Add glog target cmake configure file (#216)

* Add glog target cmake configure file

This will add glog configure file that adds glog target.
Unlike gflags, latest glog source archieve has issue(namespace difference) with latest gflags so cannot use built from source glog at the moment.
So this commit only includes adding target interface with system installed version.
Download and build from source may be added later when isses are fixed somehow.

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* move status message

* remove empty line

6 years agoBuild shared GFlags library (#215)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 10 May 2018 23:57:14 +0000 (08:57 +0900)]
Build shared GFlags library (#215)

The default GFlag build script dose not specify -fPIC option when
building static gflags library, and thus it is impossible to use built
library when building other shared libraries.

This commit addresses this issue by building shared library instead of
static library.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd ExternalProjectTools (#213)
박종현/동작제어Lab(SR)/Senior Engineer/삼성전자 [Thu, 10 May 2018 01:37:45 +0000 (10:37 +0900)]
Add ExternalProjectTools (#213)

This commit introduces ExternalProjectTools module which allows users to
import external CMake projects in a systematic way.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd gflags download and build (#210)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 9 May 2018 23:24:41 +0000 (08:24 +0900)]
Add gflags download and build (#210)

* Add gflags download and build

This will add download and build gflags within cmake
- default action is off
- system installed version can be used when download is off

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* apply comments

* move compile line

* use interface and move build options settings