박종현/동작제어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>
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>
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>
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>
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>
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>
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>
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>
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>
박종현/동작제어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>
박종현/동작제어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>
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>
박종현/동작제어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>
박종현/동작제어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
박종현/동작제어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
박종현/동작제어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>
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>
박종현/동작제어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>
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>
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>
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>
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>
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>
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>
Soft backend C/C++ framework (#483)
Introduce generator framework
Main generator and model analyzer structure
Signed-off-by: Efimov Alexander <a.efimov@samsung.com>
박종현/동작제어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>
박종현/동작제어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
최성진/동작제어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>
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>
박종현/동작제어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>
박종현/동작제어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
박종현/동작제어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>
박종현/동작제어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>
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>
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"
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박세희/동작제어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
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>
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>
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>
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>
박세희/동작제어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
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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)
박세희/동작제어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
박종현/동작제어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>
박종현/동작제어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>
박세희/동작제어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()
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박세희/동작제어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>
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>
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>
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>
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>
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>
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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
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>
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>
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>
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>
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>
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>
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>
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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어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>
박종현/동작제어Lab(SR)/Staff Engineer/삼성전자 [Thu, 28 Jun 2018 01:05:00 +0000 (10:05 +0900)]
[core.ADT] Introduce feature buffer/overlay (#400)
This commit introduces feature buffer/overlay classes, and related
tests. The design of buffer/overlay is almost similar as that of
kernel/tensor.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
Update the IDEF0 A1 diagram (#319)
Update the IDEFO A1 diagram: connect backend by Model IR
This commit updates the IDEF0 A1 diagram by adding new connection
from activity block 2 "Import NN model" to activity block 5
"Code generation" by the Model IR. It means that the backend is
able to use the Model IR to produce some output.
Also, it fixes naming of activity boxes.
Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
Update IDEF0 A12 diagram: add input Configured Execution Session (#334)
This commit updates IDEF0 A12 diagram adding one more input for
all activity Configured Execution Session.
Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
IDEF0 A0: add new input for the block from "Environment variables" (#327)
This commit adds third input from Environment variables to the block
"NN model compilation"
Signed-off-by: Sergey Vostokov <s.vostokov@samsung.com>
Soft backend plugin (#356)
Add initial soft backend to generate C/C++ source code
This commit adds C/C++ emitting backend plugin.
Yet empty
Signed-off-by: Alexander Efimov <a.efimov@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 27 Jun 2018 07:39:13 +0000 (10:39 +0300)]
PluginManager tests part 8 (AbstractModule class) (#348)
AbstractModule class test
This commit introduced test for AbstractModule class
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
Dmitry Mozolev/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 27 Jun 2018 07:19:44 +0000 (10:19 +0300)]
Add Model IR operator creator skeleton for TFLite (#354)
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>