platform/core/ml/nnfw.git
6 years agoFix IrNode to actually call visitor->visit() (#574)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 10:55:38 +0000 (13:55 +0300)]
Fix IrNode to actually call visitor->visit() (#574)

Previously disabled due to missing visitor operation acceptors

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Caffe model visitor skeleton (#540)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 10:54:50 +0000 (13:54 +0300)]
Add Caffe model visitor skeleton (#540)

Add Caffe model visitor skeleton

This commit adds Caffe model visitor skeleton.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoAdd softmax operation implementation (#542)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 10:38:01 +0000 (13:38 +0300)]
Add softmax operation implementation (#542)

Used by model IR interpreter backend

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd another post action (show_action) to README (#573)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 10 Jul 2018 09:32:30 +0000 (18:32 +0900)]
Add another post action (show_action) to README (#573)

* Add another post action (show_action) to README

This commits appends another post action (show_action) to README.

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Add Running with post action section

This commit adds `Running with post action` section.

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Remove a unused symbol

This commit remove a unused symbol.

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Modify sentence to clarify meaning

This commit modifies a sentence to clarify meaning

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
6 years agoAdd Reduce operation implementation (#543)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 07:47:32 +0000 (10:47 +0300)]
Add Reduce operation implementation (#543)

Used by model IR interpreter

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add Bias operation implementation (#441)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 07:44:08 +0000 (10:44 +0300)]
[nnc backend] Add Bias operation implementation (#441)

Add Bias operation implementation

Used by model IR interpreter backend

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add DeptwiseConv2D operation implementation (#418)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 07:43:01 +0000 (10:43 +0300)]
[nnc backend] Add DeptwiseConv2D operation implementation (#418)

[nnc backend] Add DeptwiseConv2D operation implementation

Add DepthwiseConv2D reference implementation used by model IR interpreter

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[pp] Add 'MultiLineText' interface (#571)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 10 Jul 2018 07:33:01 +0000 (16:33 +0900)]
[pp] Add 'MultiLineText' interface (#571)

This commit adds 'MultiLineText' interfaces, and revises
'LinearDocument' and 'EnclosedDocument' to inherit this interface.

In addition, this commit introduces MultiLineTextUtils
(which will includes utilities over MultiLineText interface).

Currently, it includes '<<' operator overload.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnc backend] Add Reshape operation implementation (#443)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 07:29:28 +0000 (10:29 +0300)]
[nnc backend] Add Reshape operation implementation (#443)

Add Reshape operation implementation

Used by model IR interpreter

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add Concat implementation (#419)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 10 Jul 2018 07:27:50 +0000 (10:27 +0300)]
[nnc backend] Add Concat implementation (#419)

[nnc backend] Add Concat implementation

Reference concat implementation used by model IR interpreter

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoPass args through docker-test command (#567)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 14:49:50 +0000 (17:49 +0300)]
Pass args through docker-test command (#567)

Pass args through docker-test command

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years agoInvoke tests with ctest in 'test' script (#566)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 14:49:04 +0000 (17:49 +0300)]
Invoke tests with ctest in 'test' script (#566)

Invoke tests with ctest in 'test' script

Invoke tests with ctest instead of cmake in 'test' script

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years ago[nnc backend] Add FullyConnected(matmul) operation implementation (#538)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 14:46:57 +0000 (17:46 +0300)]
[nnc backend] Add FullyConnected(matmul) operation implementation (#538)

Add FullyConnected(matmul) operation implementation

Used by model IR interpreter

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add Fill operation (#417)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 14:42:50 +0000 (17:42 +0300)]
[nnc backend] Add Fill operation (#417)

[nnc backend] Add Fill operation

Used as a base for other operations

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoConfigure a project for testing with CTest (#537)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 13:39:33 +0000 (16:39 +0300)]
Configure a project for testing with CTest (#537)

Configure a project for testing with CTest - include CTest in CMakeLists.txt

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years ago[nnc backend] Build model IR interpreter core (#557)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 11:54:33 +0000 (15:54 +0400)]
[nnc backend] Build model IR interpreter core (#557)

Build model IR interpreter core

This commit fixes adds add_subdirectory(core) in nnc/libs/backend/interpreter/CMakeLists.txt

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[pp] Add 'EnclosedDocument' class (#570)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 10:53:36 +0000 (19:53 +0900)]
[pp] Add 'EnclosedDocument' class (#570)

This commit adds 'EnclosedDocument' class which provides front() method which
allows users to append lines at the bottom of heading (in forward direction),
and back() method which allows users to prepend lines at the top of
footer (in reverse direction).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[pp] Add 'LinearDocument' class (#565)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 08:19:50 +0000 (17:19 +0900)]
[pp] Add 'LinearDocument' class (#565)

This commit adds 'LinearDocument' class which maintains a
linearly appendable document (either in forward/reverse direction).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFix failed build (#558)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 9 Jul 2018 07:50:57 +0000 (11:50 +0400)]
Fix failed build (#558)

Fix missed change to Elementwise.h naming

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[stdex.set] Overload '==' operator (#564)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 06:38:00 +0000 (15:38 +0900)]
[stdex.set] Overload '==' operator (#564)

This commit introduces 'operator==' overloading over sets.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[pp] Introduce IndentedStringBuilder (#563)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 06:37:50 +0000 (15:37 +0900)]
[pp] Introduce IndentedStringBuilder (#563)

* [pp] Introduce IndentedStringBuilder

This commit extracts IndentedStringBuilder from IndentedDocumentBuilder
class.

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

6 years agoAdd 'stdex' project (#562)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 04:43:48 +0000 (13:43 +0900)]
Add 'stdex' project (#562)

This commit introduces 'stdex' project which provides an extension over
standard C++ libraries.

The current version includes diff operator overloading over two sets.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Use set instead of Set.h

6 years ago[T/F Lite] Gather source files when adding a target (#561)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 9 Jul 2018 04:01:44 +0000 (13:01 +0900)]
[T/F Lite] Gather source files when adding a target (#561)

Currently, source files are gathered inside 'TensorFlowLiteConfig.cmake',
but the target is defined in 'TensorFlowLite/CMakeLists.txt'.

This commit moves source file gathering scripts to 'TensorFlowLite/CMakeLists.txt'
to make it easy to understand tensorflow lite target itself.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd Caffe model console dumper (#536)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 13:03:30 +0000 (16:03 +0300)]
Add Caffe model console dumper (#536)

Add Caffe model visiting mechanism

Used for traversing the model and doing something with
objects that it contains.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoNotify whether Caffe is available (#549)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Jul 2018 12:26:08 +0000 (21:26 +0900)]
Notify whether Caffe is available (#549)

This commit introduces message command, which shows 'Found' message when
Caffe is avaiable (during configuration).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoData tests final part (PluginManager class tests) (#487)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 12:16:37 +0000 (15:16 +0300)]
Data tests final part (PluginManager class tests) (#487)

PluginManager class tests

This commit introduced tests for PluginManager class

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years agoFix failed build (#554)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 12:15:52 +0000 (16:15 +0400)]
Fix failed build (#554)

Fixes mismatched include guard in conv_2D.h

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd Caffe model visiting mechanism (#535)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 11:28:25 +0000 (14:28 +0300)]
Add Caffe model visiting mechanism (#535)

Add Caffe model visiting mechanism

Used for traversing the model and doing something with
objects that it contains.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoFix merge issues from #394 (#534)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 11:27:36 +0000 (15:27 +0400)]
Fix merge issues from #394 (#534)

Add missing #include <cassert> to ShapeRange header

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add Pool2D operation implementation (#440)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 11:27:11 +0000 (15:27 +0400)]
[nnc backend] Add Pool2D operation implementation (#440)

[nnc backend] Add Pool2D operation implementation

This class is used by model IR interpreter backend

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add elementwise operation impl (#416)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 6 Jul 2018 11:25:28 +0000 (15:25 +0400)]
[nnc backend] Add elementwise operation impl (#416)

 [nnc backend] Add elementwise operation impl

Used as a base for other operation implementations

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoSoft backend C/C++ framework (#483)
Efimov Alexander/AI Tools Lab/./Samsung Electronics [Fri, 6 Jul 2018 11:22:01 +0000 (14:22 +0300)]
Soft backend C/C++ framework (#483)

Introduce generator framework

Main generator and model analyzer structure

Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
6 years agoUpdate Dockerfile with Caffe dependencies (#551)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Jul 2018 06:30:55 +0000 (15:30 +0900)]
Update Dockerfile with Caffe dependencies (#551)

This commit updates Dockerfile with Caffe dependencies.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoDo NOT require GLog from GFlags (#546)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 6 Jul 2018 01:46:14 +0000 (10:46 +0900)]
Do NOT require GLog from GFlags (#546)

Do NOT require GLog from GFlags

6 years agoIntroduce usage to nncc script (#530)
최성진/동작제어Lab(SR)/Principal Engineer/삼성전자 [Thu, 5 Jul 2018 23:31:43 +0000 (08:31 +0900)]
Introduce usage to nncc script (#530)

* Introduce usage to nncc script

This commit introduces usage to nncc script

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Modify usage in nncc script

This commit modifies usage in nncc script to list supported commands automatically

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
* Remove a help option

This commit removes help option.

Signed-off-by: lotieye.choi <lotieye.choi@samsung.com>
6 years agoFix merge issues (#505)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 5 Jul 2018 10:00:21 +0000 (14:00 +0400)]
Fix merge issues (#505)

This commit fixes merge issues from #404

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd 'docker-shell' (#468)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 5 Jul 2018 06:03:36 +0000 (15:03 +0900)]
Add 'docker-shell' (#468)

This commit extracts interactive shell creation routine from
'docker-build' and introduces it as 'docker-shell' command.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce 'pp' library (#430)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 10:09:01 +0000 (19:09 +0900)]
Introduce 'pp' library (#430)

* Introduce 'pp' library

This commit introduces 'pp' library which provides various helper
functions and classes for pretty-printing.

The current implementation provides 'fmt' function which constructs a
string using operator<<, and IndentedDocumentBuilder class which makes
it easy to build indented documents especially when indentation is
nested.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Check _level before unindent

* Use static storage quantifier

* Use strict compile options

* Remove unnecessary override

* Do not construct temporary string objects

6 years agoFix build break (#501)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 09:33:55 +0000 (18:33 +0900)]
Fix build break (#501)

This commit fixes build breaks.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnsuite] TensorFlow Lite-based conv nnkit backend (#431)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 08:46:50 +0000 (17:46 +0900)]
[nnsuite] TensorFlow Lite-based conv nnkit backend (#431)

This commit introduce a nnkit backend which inferences with sample
(random) conv model in nnsuite.

This implementation may serve as a reference data generator for compiler
test.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUpdate SW HLD content (#322)
Sergey Vostokov/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 07:34:22 +0000 (16:34 +0900)]
Update SW HLD content (#322)

Add HLD content

This commit adds the content of High-Level Design Document

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
6 years agoSW Detailed-Level Design Document v1.0 (#357)
Sergey Vostokov/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 07:30:09 +0000 (16:30 +0900)]
SW Detailed-Level Design Document v1.0 (#357)

* Add Detailed-Level Design Document

This commit adds the SW Detailed-Level Design Document

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
* Remove "Apply optimizations" section

* Update DLD template

* Add content of "SW Detailed Structure Design" section

* Remove structure image. Update section "Generate the code" and "Interface"

6 years agoAdd 'docker-run' command (#495)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 07:07:16 +0000 (16:07 +0900)]
Add 'docker-run' command (#495)

This commit introduces 'docker-run' command which invokes a given
command inside a nncc docker container.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce HDF5 import action (#380)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 07:06:48 +0000 (16:06 +0900)]
[nnkit] Introduce HDF5 import action (#380)

This commit introduces HDF5 import action, which fills tensor with the
values loaded from HDF5 file.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoPermit additional docker options via DOCKER_OPTS (#496)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 02:52:13 +0000 (11:52 +0900)]
Permit additional docker options via DOCKER_OPTS (#496)

This commmit allows users to pass additional docker options to
docker-related commands via DOCKER_OPTS variable.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoDownload NEON2SSE source by default (#493)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 02:52:01 +0000 (11:52 +0900)]
Download NEON2SSE source by default (#493)

This commit enables DOWNLOAD_NEON2SSE flag by default, and updates
docker configuration to allow CI to override NEON2SSE_URL.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoEnable GEMM Low-precesion download (#484)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Wed, 4 Jul 2018 00:26:56 +0000 (09:26 +0900)]
Enable GEMM Low-precesion download (#484)

This commit enables GEMM Lowp-precesion source code download, and
updates docker configuration to allow URL override in CI.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Add README.md (#466)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 3 Jul 2018 23:52:29 +0000 (08:52 +0900)]
[nnkit] Add README.md (#466)

* [nnkit] Add readme

This will add readme for nnkit project that can help understand what and how to use

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

* apply more comments

* remove quote mark

* anoher apply comments

* fix arg1

* detailed how nni works

* minor change

* add about nni

6 years agoFixed PluginInstance class test warning (#488)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 3 Jul 2018 14:00:02 +0000 (17:00 +0300)]
Fixed PluginInstance class test warning (#488)

This commit fixed PluginInstance class test warning

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years ago[nnc core] Add ShapeInference class (#452)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 3 Jul 2018 12:42:24 +0000 (16:42 +0400)]
[nnc core] Add ShapeInference class (#452)

Add ShapeInference class

Used to infer shapes of intermediate nodes based only on input shapes

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoFix TensorVariant deletion test (#451)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 3 Jul 2018 12:33:51 +0000 (16:33 +0400)]
Fix TensorVariant deletion test (#451)

Fix use-after-free in TensorVariant.DeletionTest( raw_indicator used after beeing deleted )

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd interpreter_core target for model IR interpreter (#453)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 3 Jul 2018 11:00:13 +0000 (15:00 +0400)]
Add interpreter_core target for model IR interpreter (#453)

Add interpreter_core target for model IR interpreter

This commit adds backend/interpreter/core directory, backend/interpreter/core/CMakeLists.txt

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoSet build type to Debug if not given (#485)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 3 Jul 2018 10:51:28 +0000 (19:51 +0900)]
Set build type to Debug if not given (#485)

* Set build type to Debug if not given

This will set CMAKE_BUILD_TYPE to "Debug" if not given through arguments
- this will add -g compile option

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

6 years ago[nnkit] Build all projects under tools/ (#476)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 10:12:24 +0000 (19:12 +0900)]
[nnkit] Build all projects under tools/ (#476)

This commit includes all the projects under contrib/nnkit/tools on configure.

This change allows users to build and test their own nnkit tools locally without
modifying files under version control.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoEnable EIGEN download by default (#469)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 09:44:43 +0000 (18:44 +0900)]
Enable EIGEN download by default (#469)

This commit enables eigen download by default, and revises docker
configuration to allow EIGEN_URL override inside CI build machines.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoBuild TensorFlow Lite in build/externals/tflite (#405)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 09:34:29 +0000 (18:34 +0900)]
Build TensorFlow Lite in build/externals/tflite (#405)

This commit revises TensorFlowLite package to build tensorflow lite
under build/externals/tflite.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd 'How to build with ninja' section (#473)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 08:04:15 +0000 (17:04 +0900)]
Add 'How to build with ninja' section (#473)

This commit adds 'How to build with ninja' section to 'Getting Started'
guide.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoEnable farmhash download by default (#479)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 07:50:43 +0000 (16:50 +0900)]
Enable farmhash download by default (#479)

This commit enables farmhash download by default, and updates docker
configuration to support URL override inside CI.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoExtract 'docker-test' (#467)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 07:42:48 +0000 (16:42 +0900)]
Extract 'docker-test' (#467)

This commit extracts 'docker-test' from 'docker-build'

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd TFLite importer plugin (#420)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 3 Jul 2018 07:36:44 +0000 (10:36 +0300)]
Add TFLite importer plugin (#420)

Add TFLite importer plugin

This commit introduces TFLite importer to the plugin system.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoEnable TensorFlow download by default (#472)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 06:59:54 +0000 (15:59 +0900)]
Enable TensorFlow download by default (#472)

This commit enables TensorFlow download by default, and updates docker
configuration to allow CI to overide download URL.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUpdate 'How to build with docker' document (#461)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 02:34:24 +0000 (11:34 +0900)]
Update 'How to build with docker' document (#461)

This commit updates 'How to build nncc with docker' section in "Getting
Started" document according to the recent change that extracts 'docker-configure'
from 'docker-build'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove 'tflitekit' (#463)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 02:33:08 +0000 (11:33 +0900)]
Remove 'tflitekit' (#463)

Now 'nnkit' includes 'tflite' backend which is identical to 'tflitekit'.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRemove 'getting_started' (#465)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 02:32:59 +0000 (11:32 +0900)]
Remove 'getting_started' (#465)

This commit removes 'getting_started' project from contrib.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce 'ENABLE_STRICT_BUILD' option (#462)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 02:01:09 +0000 (11:01 +0900)]
Introduce 'ENABLE_STRICT_BUILD' option (#462)

* Introduce 'ENABLE_STRICT_BUILD' option

This commit introduces 'ENABLE_STRICR_BUILD' option which allows us to
detect compiler warnings as error.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
* Fix a typo (wraning -> warning)

6 years ago[nnkit] Help message for nni (#457)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 3 Jul 2018 01:20:43 +0000 (10:20 +0900)]
[nnkit] Help message for nni (#457)

* [nnkit] Help message for nni

This will show help message for arguments are invalid of nni

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* remove --backend-arg count check

6 years agoAdd 'docker-configure' script (#458)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 01:19:42 +0000 (10:19 +0900)]
Add 'docker-configure' script (#458)

This commit extracts 'docker-configure' script from 'docker-build'

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT] Add kernel index enumerator (#415)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Tue, 3 Jul 2018 01:19:18 +0000 (10:19 +0900)]
[core.ADT] Add kernel index enumerator (#415)

This commit adds kernel index enumerator which is almost similar as
that of tensor, but specialized for convolution kernel.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[contrib/cli] introduce usage method (#425)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Tue, 3 Jul 2018 00:49:52 +0000 (09:49 +0900)]
[contrib/cli] introduce usage method (#425)

* [contrib/cli] introduce show_usage method

This will introduce show_usage() method in cli App class
- purpose is to show provided commands when no command is given

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
* rename to usage()

6 years ago[core.ADT] Iterator-based kernel overlay (#428)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 23:45:47 +0000 (08:45 +0900)]
[core.ADT] Iterator-based kernel overlay (#428)

This commit revises 'core::ADT::kernel::Overlay' to use iterator instead
of a pointer.

This change allows us to use kernel overlay over any STL-compatible
sequences that provides random iterator.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce 'show' action (#437)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 23:45:32 +0000 (08:45 +0900)]
[nnkit] Introduce 'show' action (#437)

This commit introduces 'show' action which dumps the content of tensors
to standard output.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT] Introduce operator== over feature shape (#442)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 23:45:22 +0000 (08:45 +0900)]
[core.ADT] Introduce operator== over feature shape (#442)

This commit introduces equality operator which tests whether two feature
shapes are identical.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoExtract out common docker configuration (#450)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 23:36:27 +0000 (08:36 +0900)]
Extract out common docker configuration (#450)

This commit extracts out common docker configuration as 'docker.configuration' file
as the first step to decompose docker-build script.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoFix nni command comments (#444)
박세희/동작제어Lab(SR)/Principal Engineer/삼성전자 [Mon, 2 Jul 2018 23:35:40 +0000 (08:35 +0900)]
Fix nni command comments (#444)

This will fix nni command comments to --pre-arg and --post-arg

Signed-off-by: SaeHie Park <saehie.park@samsung.com>
6 years agoData tests part 1.3 (DataList class tests) (#361)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 16:56:14 +0000 (19:56 +0300)]
Data tests part 1.3 (DataList class tests) (#361)

DataList class tests

This commit introduced test for DataList class

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years agoPluginManager tests part 10 (PluginManagerException class) (#355)
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 16:54:51 +0000 (19:54 +0300)]
PluginManager tests part 10 (PluginManagerException class) (#355)

PluginManagerException class test

This commit introduced test for PluginManagerException class

Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
6 years ago[nnc backend] Add conv2D operation implementation (#404)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 15:11:01 +0000 (19:11 +0400)]
[nnc backend] Add conv2D operation implementation (#404)

[nnc backend] Add conv2D operation implementation

Used by nnc model IR interpreter backend

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc backend] Add OperationImpl class (#396)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 15:09:12 +0000 (19:09 +0400)]
[nnc backend] Add OperationImpl class (#396)

Add OperationImpl class

Base class used as a base for other operation implementations

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc core] Add Tensor class template (#395)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 15:03:52 +0000 (19:03 +0400)]
[nnc core] Add Tensor class template (#395)

[nnc core] Add Tensor class template

Used as a TensorVariant data accessor

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years ago[nnc core] Add ShapeRange class (#394)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 2 Jul 2018 15:02:51 +0000 (19:02 +0400)]
[nnc core] Add ShapeRange class (#394)

[nnc core] Add ShapeRange class

Adds ShapeRange and ShapeIter classes used to iterate over given shape

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoEnable DOWNLOAD_CAFFE by default (#433)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 10:32:45 +0000 (19:32 +0900)]
Enable DOWNLOAD_CAFFE by default (#433)

This commit changes the default value of DOWNLOAD_CAFFE as ON, and
updates docker-build scripts to allow CI to override CAFFE_URL.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoRun unittest per PR (#435)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 09:38:53 +0000 (18:38 +0900)]
Run unittest per PR (#435)

This commit revises 'docker-build' script to run test after build.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoBuild farmhash under dedicated location (#412)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 01:24:35 +0000 (10:24 +0900)]
Build farmhash under dedicated location (#412)

This commit revises Farmhash package to build farmhash library under
dedicated location (build/externals/farmhash).

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIgnore top-level Makefile (#413)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 01:24:26 +0000 (10:24 +0900)]
Ignore top-level Makefile (#413)

Makefile is intentionally omitted in the top-level to allow users to
have their own Makefile. This commit adds top-level Makefile to
.gitignore to make this policiy explicit.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd 'nnsuite' project (#410)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 01:24:17 +0000 (10:24 +0900)]
Add 'nnsuite' project (#410)

This commit adds 'nnsuite' project which will includes various in-memory
NN models for testing.

Currently, 'nnsuite' includes a simple model consists of one Conv2D operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoUse 'cmake --build' instead of make (#414)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Mon, 2 Jul 2018 01:24:00 +0000 (10:24 +0900)]
Use 'cmake --build' instead of make (#414)

This commit revises 'build' command scripts to use 'cmake --build'
instead of make.

This change will allow users to use other build system such as ninja.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd TFLite-to-Model IR operator creator implementation (#407)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 11:54:15 +0000 (14:54 +0300)]
Add TFLite-to-Model IR operator creator implementation (#407)

Add TFLite-to-Model IR operator creator implementation

Implementation for operator creator API functions, which
create the corresponding Model IR operators.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoFinalize initial version of TFLite v3 importer (#406)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 11:25:22 +0000 (14:25 +0300)]
Finalize initial version of TFLite v3 importer (#406)

This commit uses TFLite format visitor to finalize TFLite
importer interface.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoUpdate SW Test Document: fix Req IDs, add test cases (#352)
Sergey Vostokov/AI Tools Lab /SRR/Staff Engineer/삼성전자 [Fri, 29 Jun 2018 10:46:34 +0000 (19:46 +0900)]
Update SW Test Document: fix Req IDs, add test cases (#352)

* Update SW Test Document: fix Req IDS, add test cases

This commit updates SW Test Document by applications the following changes:
 - fix requirements numbering
 - update project repo structure
 - add test cases

* Update title version in STD document

Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
6 years agoCreate Model IR operators in TFLite model visitor (#398)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 10:21:52 +0000 (13:21 +0300)]
Create Model IR operators in TFLite model visitor (#398)

This commit adds the code that makes use of the TFLite-to-Model-IR
operator creator to construct Model IR graph.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoSet known Model IR node names and remove "NYI" exceptions (#397)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 07:35:36 +0000 (10:35 +0300)]
Set known Model IR node names and remove "NYI" exceptions (#397)

Removed "Not implemented" exceptions from remaining visitor functions
(they are just supposed to be empty) and added code that sets Model IR
node names.

Note: not all of the nodes will get names because there is no 1-to-1
correspondence between TFLite graph nodes and Model IR nodes.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years ago[nnc core] Add reshape operation description (#392)
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 07:31:54 +0000 (11:31 +0400)]
[nnc core] Add reshape operation description (#392)

This commit adds missing reshape operation description

Signed-off-by: Vladimir Plazun <v.plazun@partner.samsung.com>
6 years agoAdd functions preparing data for the TFLite-to-IR operator creator (#376)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 07:28:40 +0000 (10:28 +0300)]
Add functions preparing data for the TFLite-to-IR operator creator (#376)

Add functions preparing data for the TFLite-to-IR operator creator

Operator creator interface functions take collections of operator
inputs and operator parameters as arguments. These two functions
prepare this data.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years agoAdd auxiliary functions for creating TFLite-to-Model-IR operators (#363)
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 29 Jun 2018 07:24:26 +0000 (10:24 +0300)]
Add auxiliary functions for creating TFLite-to-Model-IR operators (#363)

Add Model IR operator creator skeleton for TFLite

This is a Model IR operator creator class skeleton.
Contains public interface for creating supported operations.

Signed-off-by: Dmitry Mozolev <d.mozolev@samsung.com>
6 years ago[nnkit] Introduce 'tflite' backend (#408)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Fri, 29 Jun 2018 01:27:39 +0000 (10:27 +0900)]
[nnkit] Introduce 'tflite' backend (#408)

This commit introduces 'tflite' bakckend, which loads 'tflite' model
file and runs inference.

The core part of this backend is extracted as nnkit_support_tflite
library, which allows its reuse in the future.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoIntroduce 'nnop' library (#402)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 10:16:16 +0000 (19:16 +0900)]
Introduce 'nnop' library (#402)

This commit introduce 'nnop' librarry which provides simple (naive)
implementation of NN operation (which can be used as a reference).

'nnop' currently contains 'conv2d' operation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years agoAdd 'How to build and run unittest' section (#403)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 08:48:48 +0000 (17:48 +0900)]
Add 'How to build and run unittest' section (#403)

This commit adds 'How to build and run unittest' section in Getting
Started document.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.ADT] Introduce NHWC kernel layout (#401)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 08:20:20 +0000 (17:20 +0900)]
[core.ADT] Introduce NHWC kernel layout (#401)

This commit introduces NHWC kernel layout, which is commonly used in
CPU-optimized convolution implementation.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[core.tensor] Introduce IndexEnumerator (#381)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 07:27:55 +0000 (16:27 +0900)]
[core.tensor] Introduce IndexEnumerator (#381)

This commit introduces IndexEnumerator which enumerates all the valid index
for a given Shape in lexical order, and related unittests.

In addtion, this commit rewrites IndexRange class using IndexEnumerator
to eliminate code duplication.

Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
6 years ago[nnkit] Introduce randomize action (#399)
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 01:05:11 +0000 (10:05 +0900)]
[nnkit] Introduce randomize action (#399)

This commit introduces randomize action which randomizes all the tensors
in a tensor context.

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