박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 07:53:37 +0000 (16:53 +0900)]
Import reference NN runtime (#1181)
This commit imports reference android NN runtime implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 07:16:29 +0000 (16:16 +0900)]
[enco] Introduce DuplicatePass (#1177)
This commit introduces DuplicatePass which eliminates a pair of
input/ouput that share the same bag as their underlying bag.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 06:46:02 +0000 (15:46 +0900)]
[nnkit] Mangle tensor names (#1173)
This commit revises HDF5 export/import action to mangle tensor
names when it export into/import from a HDF5 file.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 02:40:02 +0000 (11:40 +0900)]
[enco] Emit missing return (#1178)
Network_input_count and Network_output_count emitted by the current
implementation does not have "return".
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 02:30:46 +0000 (11:30 +0900)]
[enco] Emit input/output metadata API (#1176)
With this commit, enco now emits the implementation of input/ouput
metadata API.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 01:29:48 +0000 (10:29 +0900)]
Introduce EXCLUDE option to add_subdirectories (#1156)
Now, user can request add_subdirectories not to include some
directories.
Note that there is no change in the default behavior.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 01:12:45 +0000 (10:12 +0900)]
[enco] Process Input layer (#1158)
This commit revises enco Caffe frontend to support Input layer.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 00:58:03 +0000 (09:58 +0900)]
[enco] Check the existence of in/out bag (#1154)
* [enco] Check the existence of in/out bag
The current design of enco NNAPI backend does not work if there is an
in/out bag.
This commit introduces a corresponding assert to make it easy to detect
such a case.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Update comment
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 24 Aug 2018 00:33:29 +0000 (09:33 +0900)]
[enco] Record Input/Output Shape metadata (#1153)
With this commit, generated C++ code includes the shape metadata of each
input and output.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
fix build bug: eliminate dependencies from external Shape (#1164)
* remove redundant operator<<
* replace including shape headers
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Refactor CLI options and output message (#1142)
- remove redundant option
- correct output message in usage method
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 23 Aug 2018 15:32:45 +0000 (18:32 +0300)]
Add .dot Model IR dumper (#1027)
Allows to present Model IR graph as a graph in .dot format.
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 23 Aug 2018 09:42:58 +0000 (12:42 +0300)]
[nnc] Save interpreter result (#941)
Added cli key to save interpreter result
Update README.md about running nnc (#1141)
- update README.md
- correct overview for options
- replace tabs by spaces in option printing
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 08:09:17 +0000 (17:09 +0900)]
[enco] Load model from files (#1152)
This commit revises caffe frontend to load prototxt and caffemodel from
disk.
Now users should provides these files as an argument.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 07:05:03 +0000 (16:05 +0900)]
[coco] Allow Input and Output to share the same bag (#1150)
This commit revises coco IR to allow Input and Output to share the same
backing bag.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 06:57:21 +0000 (15:57 +0900)]
[enco] Record input/output names (#1151)
With this commit, C++ code that enco generates allows users to get input/output
name via Network_input_name and Network_output_name API.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 04:12:21 +0000 (13:12 +0900)]
[enco] Enforce source code generation (#1149)
This commit revises enco basic(000) testcase to always generate source
code.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 04:05:59 +0000 (13:05 +0900)]
[enco] Implement Caffe model import helpers (#1144)
This commit implements 'from_txt' and 'from_bin' helper functions that
constructs caffe NetParameter from textual/binary input stream.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 03:48:57 +0000 (12:48 +0900)]
[ann] Import Android NN API header (#1147)
This commit introduces 'ann_api' target which allow clients to access Android NN API
header.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 01:07:26 +0000 (10:07 +0900)]
[enco] Introduce Global vairable manager (#1140)
This commit introduces Global class which allows us to declare global
variables with its initial value.
The current implemenation supports global string decleration.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 23 Aug 2018 01:07:15 +0000 (10:07 +0900)]
[enco] Introduce basic test (000) (#1139)
This commit introduces the first enco test which enforces enco to
generates compilable C++ code (at least for empty model).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
interpreter: add intermediate operations result getter (#1112)
implemented getting results by node names
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
Fix axis number for nonstandart shaped tensors (#1039)
Set proper axis number for softmax and reshape opeartions for tensors with non 4 dimension shapes
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 22 Aug 2018 15:21:04 +0000 (18:21 +0300)]
[nnc] Update DepthwiseConvolution interpreter test (#1032)
Follow-up to #1030, now DepthwiseConv operation is tested
with a full 4D kernel.
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 13:15:45 +0000 (22:15 +0900)]
[nncc.foundation] Remove unused Exception class (#1131)
This commit removes Exception class from nncc.foundation as there is no
code that use this class.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Add support of negative axis in softmax (#1117)
Use negative parameter in softmax operation to count axises from last one
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 10:39:50 +0000 (19:39 +0900)]
[enco] Emit Network_???_count and Network_???_bind (#1138)
This commit revises C++ code emitter to emit the implementation of the
following functions:
- Network_input_count
- Network_input_bind
- Network_output_count
- Network_output_bind
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 10:32:32 +0000 (19:32 +0900)]
[coco] Introduce Stride2D (#1137)
This commit introduces Stirde2D class which records stride over 2D plane
(such as channels in a feature map).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 09:36:38 +0000 (18:36 +0900)]
[enco] Dummy Caffe Frontend implementation (#1133)
This commit introduces Frontend class which inherits enco::Frontend.
In the current implementation, load method always returns empty
coco::Module and coco::Data instances.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 08:33:15 +0000 (17:33 +0900)]
[enco] Self-complete C++ code gen (#1134)
This commit revises C++ code generator to generate self-complete C++
code, which allows us to compile generated C++ code without any
dependency.
The current implementation includes "NeuralNetworks.h" (which is not
available yet), and emits Network_output_dim implementatation that
cannot be compiled.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 08:32:53 +0000 (17:32 +0900)]
[coco] Record Conv2D Padding (#1135)
This commit revises Conv2D op to record required padding.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 07:16:50 +0000 (16:16 +0900)]
[enco] Caffe frontend template (#1130)
This commit creates a workspace for Caffe frontend with basic template.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 07:12:51 +0000 (16:12 +0900)]
[enco] Invoke backend compile method from CLI (#1126)
This commit revises enco-cli to initiate compilation from loaded bundle
(that frontend generates).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 07:12:35 +0000 (16:12 +0900)]
[enco] Introduce basic implementation of CppCode (#1128)
This commit introduces basic implementation of CppCode which emits the
basic template of compiled artifact.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 07:09:47 +0000 (16:09 +0900)]
[enco] Introduce Backend basic implementation (#1127)
This commit introduces the basic template of enco::Backend
implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 07:05:44 +0000 (16:05 +0900)]
[coco] Introduce reorder in Arg (#1124)
This commit add reorder method to Arg to facilitate Frontend
implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 22 Aug 2018 07:04:13 +0000 (16:04 +0900)]
[nest] Fix conv2d example comments (#1123)
This will fix nest conv2d example comments about ifm, ker accessing.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
Implement compiler driver and redesign plugin system (#1103)
* improve command line parser a little bit
* implement compiler driver
* redesign plugin system:
- eliminate redundant classes
- search plugin by predefined paths
- adapt cmake build system: installation of targets
* Remove redundant headers
* Set plugin name dependent on OS target
* Eliminate dependencies from nncc_foundation and nncc_core libraries
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 05:36:12 +0000 (14:36 +0900)]
[enco] Introduce CppCode class (#1125)
This commit introduces CppCode class which encapsulates C++ code
emitter.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 04:16:37 +0000 (13:16 +0900)]
[enco] Introduce Code class (#1111)
* [enco] Introduce Code class
This commit introduces Code class which is a triple of coco::Module,
coco::Data, and ANNContext; One may regard this as an extended coco IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use enco namespace
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 02:19:23 +0000 (11:19 +0900)]
[pp] Remove deprecated IndentedDocumentBuilder (#1120)
This commit removes deprecated IndentedDocumentBuilder from pp.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Wed, 22 Aug 2018 02:19:15 +0000 (11:19 +0900)]
Add 'llvm' as external module (#1110)
This commit adds 'llvm' as external module which provides compile/link options to use LLVM libraries.
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 02:19:03 +0000 (11:19 +0900)]
[coco] Introduce Padding2D class (#1121)
This commit introduces Padding2D class which represents padding for
feature operations such as Conv2D.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 22 Aug 2018 02:18:54 +0000 (11:18 +0900)]
[coco] Support Shuffle creation (#1108)
This commit allows InstrManager to create Shuffle instructions.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 21 Aug 2018 18:20:27 +0000 (21:20 +0300)]
[nnc] tflite schema moved to separate target (#1092)
Moved tflite schema to separate target
Add stream operator for Shape (#1115)
This commit adds stream operator for Shape
Add stream operator for Index (#1116)
This commit adds stream operator for Index
Move Shape and Index classes to nnc (#1104)
Move Shape, Index and all related support classes to nnc
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 21 Aug 2018 06:36:36 +0000 (15:36 +0900)]
[enco] Introduce ANNBinder and ANNContext (#1109)
This commit introduces ANNBinder (which bridges coco::Block and
ann::Module) and ANNContext (which serves as a factory/tracker of
ANNContext).
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 21 Aug 2018 04:52:30 +0000 (13:52 +0900)]
[enco] Introduce ANN IR Module class (#1107)
This commit introduces ANN IR Module class which hosts all of ANN
Weight/Operand/Operations in it.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 21 Aug 2018 04:41:29 +0000 (13:41 +0900)]
[coco] Introduce 'Shuffle' instruction (#1088)
This commit introduces 'Shuffle' instruction which allows us to express
data reordering in IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 21 Aug 2018 01:44:14 +0000 (10:44 +0900)]
[enco] Introduce ANN OperationInventory (#1105)
This commit introduces ANN OperationInventory which stores a sequence of
operations in ANN IR.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 20 Aug 2018 23:39:57 +0000 (08:39 +0900)]
Add llvm 6.0 to CI docker image (#1086)
This will add llvm 6.0 dev binaries to CI docker image.
- builds llvm 6.0 from source
- use docker multi-stage to reduce image size
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 23:33:19 +0000 (08:33 +0900)]
[nncc.core.ADT] Overload == over kernel shape (#1053)
This commit introduces '==' operator overloading for kernel shape
instances.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 23:18:30 +0000 (08:18 +0900)]
[enco] Introduce ANN WeightInventory class (#1096)
This commit introduces ANN WeightInventory class which serves as a
factory and tracker of all the Weight instances.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 23:18:18 +0000 (08:18 +0900)]
[enco] Introduce ANN OperandInventory (#1095)
This commit introduces ANN OperandInventory class which serves as a
factory and tracker of ANN Operand instances.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 23:18:06 +0000 (08:18 +0900)]
[enco] Introduce ANN 'Operation' class (#1094)
This commit introduces 'Operation' class for Android NN IR that enco
internally uses.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Type command line checker functions more precisely (#1100)
Replaces BaseOption in argument of checkers with actual option types
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
[nnc debug] Add command line options (#1079)
Add options to enable nnc_debug. They will be processed later by compiler driver.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
Soft backend: unit tests for C++ operations (#946)
Add implementation of unittests for operations
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 09:38:38 +0000 (18:38 +0900)]
[enco] Introduce ANN Operand classes (#1093)
This commit introduces ANN Operand classes (Scalar/Tensor) for plain
(non-quantized) operations.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[nnkit] Add caffe section to README (#1080)
* Add caffe section to README.
Added "Running with Caffe backend" section to nnkit README file.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
* Remove excessive newline.
Remove excessive newline to follow document style better.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
* Changes.
Changed filename and added info that `caffemodel` is unnecessary.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
* Clarify usage.
Add clarification on `caffemodel` file necessity.
Signed-off-by: Denis Maksimenko <d.maksimenko@partner.samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 07:55:17 +0000 (16:55 +0900)]
[enco] Introduce ANN Weight class (#1091)
This commit introduces ANN Weight class which will hold initial data for
a specific operand.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 07:55:10 +0000 (16:55 +0900)]
[enco] Introduce ANN Operand ID (#1090)
This commit introduces 'ann::OperandID' class to denote an
operand in Android NN network in a type-safe way.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 07:21:02 +0000 (16:21 +0900)]
[enco] Introduce Andoird NN DataType enum (#1089)
This commit introduces Android NN DataType enum, which is a part of ANN
IR that enco internally uses.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 05:19:31 +0000 (14:19 +0900)]
[enco] Introduce 'core' library (#1087)
This commit introduces enco core library which will hosts Android NN API
backend implementation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 20 Aug 2018 02:48:15 +0000 (11:48 +0900)]
[coco] Introduce Update Hook & Slot (#1077)
This commit introduces 'UpdateHook' and 'UpdateSlot' classes to make it
easy to implement an instruction that directly updates Bag.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Add nullpointer check in Model IR Node input connection (#1078)
Pointer returned from function 'dynamic_cast' at ir_node.cpp:23 may be null, and it is dereferenced at ir_node.cpp:23.
fix #1071
Signed-off-by: y.novikov <y.novikov@partner.samsung.com>
Use const ptr instead passing by value (#1065)
Passing structures of such size by value can lead
to unnecessary performance loss.
Signed-off-by: y.novikov <y.novikov@partner.samsung.com>
Soft backend: support new format of kernel in depthwise convolution (#1064)
Adds proper support of 4-dimensional kernel in depthwise operation
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Fix softmax axis inporting in TF lite (#1038)
Set softmax axis to 1 in case of fully connected layer before it
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 07:29:32 +0000 (16:29 +0900)]
[coco] Pass BagLink to InstrManager (#1076)
This commit revises InstrManager to take BagLink as an argument on
construction. BagLink is necessary for bag reading/updating instruction
creation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 07:29:24 +0000 (16:29 +0900)]
[coco] Introduce Read Hook & Slot (#1075)
This commit introduces Read Hook & Slot classes which makes is easy to
implement direct Bag reading instruction.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Fri, 17 Aug 2018 06:33:30 +0000 (15:33 +0900)]
Fix docker argument checking (#1074)
This will fix docker argument check and execution
- 'echo' and 'sed' was executed regardless of variable settings
Signed-off-by: SaeHie Park <saehie.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 05:13:03 +0000 (14:13 +0900)]
[coco] Record direct bag read/update (#1073)
This commit extends BagInfo to record direct (not through Object) bag
read/update.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 05:12:54 +0000 (14:12 +0900)]
[enco] Initial commit (#1072)
This commit creates 'enco' project; NN model-to-Android NN API
transpiler based on Coco IR.
This commit includes README.md and the core implementation of enco CLI.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 05:12:34 +0000 (14:12 +0900)]
[coco] Introduce Locatable interface (#1059)
This commit introduces Locatable interface, which allows us to get a
location (as an instruction) on the code; This class serves as a base
class for Bag::Read, Bag::Update, Object::Def, and Object::Use.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 17 Aug 2018 00:39:49 +0000 (09:39 +0900)]
[coco] Implement bag update in Arg (#1057)
This commit moves Bag update implementation from Input/Output into Arg.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
interpreter plugin: Fix segfaut on tensor loading (#1035)
Add check result for fopen
Signed-off-by: Vitaliy Cherepanov <v.cherepanov@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 10:20:17 +0000 (19:20 +0900)]
[coco] Remove Conv2D::Param struct (#1054)
This commit removes Conv2D::Param struct, and revises OpManager::create method
similarly as InstrManager::create method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 09:49:02 +0000 (18:49 +0900)]
[coco] Share mock-up Def class (#1056)
DefHook/DefSlot tests include their own mock-up Def class. This commit
extracts these mock-up Def class as shared one.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 09:47:59 +0000 (18:47 +0900)]
[coco] Share mock-up Use class (#1055)
This commit extracts mock-up Use class from UseHook/UseSlot tests, and
shares the extracted one for both tests.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 08:05:17 +0000 (17:05 +0900)]
[coco] Update Object Def/Use from FeatureInstr (#1050)
This commit revises FeatureInstr to support automatic update of def/use
of its IFM/OFM object.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 07:50:17 +0000 (16:50 +0900)]
[coco] Record Bag Read/Update set (#1052)
This commit introduce Bag::Read and Bag::Update class which allows us to
query the location of Bag reads and updates.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 06:49:58 +0000 (15:49 +0900)]
[coco] Automatic update Kernel Object's user list (#1049)
This commit revises Conv2D op class to automatically update kernel object's
user list on ker method call.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 05:06:41 +0000 (14:06 +0900)]
[coco] Introduce DefSlot<T> (#1048)
This commit introduces DefSlot template class which make it easy to
declare Object-defining entities such Instr.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 05:05:40 +0000 (14:05 +0900)]
[coco] Introduce UseSlot<T> (#1047)
This commit introduces UseSlot<T> template class which make it easy to
declare Object-using entities such as Op and Instr.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 04:50:07 +0000 (13:50 +0900)]
[coco] Move ObjectManager into Conv2DTest class (#1046)
This commit moves ObjectManager-related instance declarations from
ker_update testcase into Conv2DTest fixture.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 04:33:25 +0000 (13:33 +0900)]
[coco] Introduce DefHook (#1045)
This commit introduces DefHook class which encapsulates necessary
actions on Def Object updates.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 04:31:40 +0000 (13:31 +0900)]
[coco] Expose Object def/user information (#1044)
This commit allows users to access Object def/user information recorded in
ObjectInfo through Object entities.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 04:29:36 +0000 (13:29 +0900)]
[coco] Introduce UseHook (#1042)
This commit introduces UseHook, which encapsulates ObjectInfo update
routines on Object usage changes.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 01:53:32 +0000 (10:53 +0900)]
[coco] Update Object Link on Object Creation (#1041)
This commit revises ObjectManager to update Object Link on object
creation.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 01:30:24 +0000 (10:30 +0900)]
[coco] Use common UnitF allocation routine (#1040)
This commit extracts common UnitF allocation routine in UnitF tests as
'allocate' helper method.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 01:17:17 +0000 (10:17 +0900)]
[nnkit] Caffe-based nnsuite conv backend (#1006)
This commit introduces Caffe-based nnsuite conv backend. This backend
serves as a oracle for Caffe-compatible compiled artifacts.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 16 Aug 2018 00:50:27 +0000 (09:50 +0900)]
[coco] Record Def/Use(s) in ObjectInfo (#1007)
This commit introduces Def/Use fields in ObjectInfo. Note that
this commit justs introduces fields, and does not include any update
code.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Soft backend: fix fully connected layer (#1015)
Fixes serialization of fully connected parameters
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Soft backend: fix pooling operation (#1028)
Rearrange window, strides and padding dimensions
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
Partial redesign plugins system and add usage of new CLI (#1029)
* improve command line infrastructure:
- add new parameter (checker) in Option class
* replace all uses by new CLI
* partial redesign plugins system
Signed-off-by: Roman Rusyaev <r.rusyaev@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 15 Aug 2018 16:52:38 +0000 (19:52 +0300)]
[nnc] Support depthwise conv channel multiplier in interpreter (#1030)
Now depthwise convolution in interpreter supports 4D kernels.
Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>