이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 9 Jul 2019 06:46:30 +0000 (15:46 +0900)]
Move ConfigManager.cc to the upper directory (#5586)
`ConfigManager.cc` should have been moved to the upper directory from
PR #5555 but it wasn't. So this commit fixes it.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 9 Jul 2019 05:11:35 +0000 (14:11 +0900)]
Remove externals/.FORMATDENY file (#5587)
Remove remain externals/.FORMATDENY file in external to remove externals directory in repo
Make directory in nnfw.spec to copy saved external code
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 9 Jul 2019 04:27:32 +0000 (13:27 +0900)]
Move script for generate test (#5578)
Move script in externals/nnapi_test_generator to generate nnapi gtest
Update gitignore - remove deprecated directory
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 9 Jul 2019 04:27:16 +0000 (13:27 +0900)]
Move lcov-to-cobertura-xml script (#5580)
Move externals/lcov-to-cobertura-xml directory to tools/
Remove external tool dependency in gen-coverage-report command
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 9 Jul 2019 04:12:56 +0000 (13:12 +0900)]
[nnpackage] update specification to add model-types attribute (#5572)
`MANIFEST` will have `model-types` attributes to identify what kind of
models it contins.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 8 Jul 2019 10:16:37 +0000 (13:16 +0300)]
[neurun] Initial implementation of KernelGenerator (#5574)
* Implementated KernelGenerator interface
* Implemented empty KernelGenerator classes for each backend
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 8 Jul 2019 08:18:37 +0000 (17:18 +0900)]
Remove CMAKE_SOURCE_DIR in cmake script (#5576)
- Change CMAKE_SOURCE_DIR/externals to NNFW_EXTERNALS_DIR
- Remove some target_include_directories using CMAKE_SOURCE_DIR: because of linked libraries already include with PUBLIC
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 8 Jul 2019 05:56:29 +0000 (08:56 +0300)]
[tflite_loader] Perform tflite_loader tests while testing neurun cpu (#5526)
Perform tflite_loader tests while testing neurun cpu
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 8 Jul 2019 04:50:45 +0000 (13:50 +0900)]
Remove mobilenet tests in nnapi generated test (#5554)
Comment out mobilenet recipes in nnapi generated test
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 5 Jul 2019 10:58:01 +0000 (19:58 +0900)]
Decouple ConfigManager with Env Vars (#5565)
- `IConfigSource` is introduced
- `ConfigManager` gets value through `IConfigSource`
- `EnvConfigSource` is a subclass of `IConfgSource` that gets values
from Env Vars
Resolve #5556
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 5 Jul 2019 06:11:32 +0000 (15:11 +0900)]
Implement nnfw_load_model_from_file (#5533)
- accept nnpackge directory as argument.
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Fri, 5 Jul 2019 01:17:18 +0000 (04:17 +0300)]
[tflite_loader] Supported models with multiple output tensors (#5525)
* [tflite_loader] Supported models with multiple output tensors
Supported models with multiple output tensors
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Fri, 5 Jul 2019 01:15:45 +0000 (10:15 +0900)]
[nnpackage] update spec for multiple layout (#5553)
Multiple layout is added in specification.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 10:08:40 +0000 (19:08 +0900)]
[kbenchmark] Add TransposeConv kernel (#5546)
This patch adds acl cl and neon TransposeConv kernel test sets.
It also tests CLDeconvolutionLayerEx.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 4 Jul 2019 09:59:38 +0000 (12:59 +0300)]
[neurun] Applied shape fixer (#5549)
Applied ShapeFixer, removed ShapeFixer functionality from StageGenerator
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 4 Jul 2019 02:21:17 +0000 (05:21 +0300)]
[tflite_loader] Generate smaller values for input tensors (#5538)
Generate smaller values for input tensors
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 4 Jul 2019 01:55:30 +0000 (10:55 +0900)]
Specify parameter types in nnfw.h comments (#5550)
Specify parameter type for every param comments whether it is 'in' or
'out'.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 01:46:51 +0000 (10:46 +0900)]
Update root cmake script (#5552)
- Change require minimum cmake version to 3.5.1 (ubuntu 16.04)
- Don't use gnu++11 extension
- Introduce overlay for external pre-built and install (from star/nncc#2838)
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 4 Jul 2019 01:13:43 +0000 (10:13 +0900)]
Fix build error in ShapeInference test (#5563)
Fix build error by updated model.operands - ObjectManager
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Thu, 4 Jul 2019 00:45:50 +0000 (03:45 +0300)]
[neurun] Initial implementation of ShapeInference component (#5363)
* [neurun] Initial implementation of ShapeInference component
* Added initial implementation of ShapeInference component
* Implemented ShapeInference visitor for AddOp
* Implemented ShapeInference unit tests for AddOp
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
* Moved to utils
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 4 Jul 2019 00:37:03 +0000 (09:37 +0900)]
Change namespace of ConfigManager (#5555)
- namespace : `neurun::config` -> `neurun::util`
- directory : `util/config` -> `util`
const strings stay in namepace `neurun::util::config`.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 3 Jul 2019 09:53:04 +0000 (18:53 +0900)]
Correct a typo in nnfw.h (#5548)
This commit corrects typo : pacakge to package.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 09:32:00 +0000 (18:32 +0900)]
[nnpackage] Update specification (model_and_operators) (#5529)
* [nnpackage] Update specification (model_and_operators)
Added:
- Serialization Format
- Baseline Schema
- Unspecified dimension
* Remove rationale for serialization format
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 09:29:03 +0000 (18:29 +0900)]
Fix arm compute cl kernel for transpose conv (#5543)
* Fix arm compute cl kernel for transpose conv
Fix arm compute cl kernel for transpose conv
- Padding calculation
- Allow asymmetric padding
- Get and fix upsample layer and kernel
- Rename DeconvolutionXXX to TransposeConvXXX
- Enable all transpose conv tests
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix pacl
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 08:00:39 +0000 (17:00 +0900)]
Introduce NNFW_EXTERNALS_DIR configuration (#5544)
This commit allows users to download external dependencies
into their own location via setting NNFW_EXTERNALS_DIR.
Same with nncc: star/nncc#4065
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Add minor scheduler related fixes (#5479)
* Add minor scheduler related fixes
1. No need to call notifyJobBegin/End for non-profiling run
2. Just one of the scheduler must be called
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Fix Scheduler issues
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
* Revert changes in DataflowExecutor::executeImpl
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 3 Jul 2019 07:51:41 +0000 (10:51 +0300)]
[neurun] Introduced ShapeFixer (#5521)
* [neurun] Introduced ShapeFixer
Introduced ShapeFixer component in neurun Backends
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
* Review fixes
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 07:28:03 +0000 (16:28 +0900)]
Fix and add license (#5537)
Fix license year and add lost license
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 07:27:03 +0000 (16:27 +0900)]
Enable tflite_loader on gbs build (#5536)
- Note that tizen does not have flatbuffer repo
- This patch enables tflite_loader build on gbs
- flatbuffer source commit :
1f5eae5d6a135
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 3 Jul 2019 05:59:14 +0000 (14:59 +0900)]
Update README (#5528)
* Update README
- Add `Maintainers` and `Committers` list to following the rule of Samsung
Inner Source Program.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
* Update committers list
- Add Hanjoung Lee instead Seihie Park.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 3 Jul 2019 05:52:59 +0000 (14:52 +0900)]
Add transpose conv tflite file test (#5541)
Add transpose conv tensorflow lite file test (framework test) - same padding, stride 2
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 10:03:37 +0000 (19:03 +0900)]
[kbenchmark] Update summary view of html file (#5519)
* [kbenchmark] Update summary view of html file
This patch generates a summary view of html file.
This will help you to see at a glance which graph shows
which kernel performs well in the current layer.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
* Change the location of the html_report_template.g.h++ that needs copy to cmake/packages/Nonius directory
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 2 Jul 2019 07:20:17 +0000 (16:20 +0900)]
Add CONTRIBTUTORS file (#5517)
- Add contributor list, as is.
- Generated by `git shortlog -se | cut -f2` with `.mailmap` file.
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 2 Jul 2019 07:11:03 +0000 (16:11 +0900)]
Define Operations with ObjectManager (#5508)
Just like `Operands` were defined as an ObjectManager specialization,
this applies the same for `Operations`.
See also : #5464
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 05:33:28 +0000 (14:33 +0900)]
nnfw API implementation skeleton (#5527)
- c++ wrapper for nnfw.h in api/wrapper
- empty implementation
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
Remove `model::Shape::asVector` replacing calls to it with `num_elements()` or `dim(0)`. (#5498)
Also remove unused `model::Shape::asMatrix` and `model::Shape::asTensor`.
This is a preparation step before removing dependency of `model::Shape` on `misc::tensor::Shape`.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Upload exec_time explicitely, not in destructor (#5511)
Since exec time is updated just in case of turned on profiler, no need
to upload it in a destructor. Moreover, since graph::Graph is reusable,
in its next usages BackendResolver will be recreated without destructing
JSON/ExecTime/Graph, so Backend, that is pointed by
JSON::_measurements.first in the first call is destructed and
JSON::uploadOperationsExecTime will cause a segmentation error in
`printString(backend.first->config()->id(), stream);`
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
Add workarounds for unsupported ops in scheduler (#5512)
This is workaround, come up with better solution if have.
Adding exception in stage doesn't help. Because if
there is a record for an op without broadcast,
scheduling will select it since it doesn't distinguish
broadcast and non-broadcast like it does for quant&non-quantized
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 2 Jul 2019 01:26:42 +0000 (10:26 +0900)]
Add header files to use tflite_loader (#5520)
- provide header files to build with tflite_loader
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
Use CLRsqrtLayer instead of custom implementation (#5500)
Use `CLRsqrtLayer` (introduced in ACL v19.02) instead of custom implementation
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Use CLExpLayer instead of custom implementation (#5501)
Use `CLExpLayer` (introduced in ACL v19.02) instead of custom implementation
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Use CLElementwiseSquaredDiff instead of custom implementation (#5502)
Use `CLElementwiseSquaredDiff` (introduced in ACL v19.02) instead of custom implementation
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Assign 1 to supported op in Scheduler::tryBackend (#5490)
Scheduler must prefer supported op to unsupported one
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 08:24:34 +0000 (17:24 +0900)]
jsoncpp library as a static lib for nnfw internal use (#5510)
* jsoncpp library as a static lib for nnfw internal use
- jsoncpp library(1.7.7) as a static lib
- tizen does not provide static lib and it is not sure that it is
- shipped into tizen platform
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
* apply format.patch
Ivan Vagin/AI Tools Lab /SRR/Engineer/삼성전자 [Mon, 1 Jul 2019 04:58:00 +0000 (07:58 +0300)]
[neurun] Fix multiple parent tensor skipping (#5509)
Fix multiple parent tensor skipping
Signed-off-by: Ivan Vagin <ivan.vagin@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 1 Jul 2019 03:44:43 +0000 (12:44 +0900)]
[kbenchmark] Separate the result file if it is not html reporter type (#5361)
This patch separates the result files if it is not html reporter type.
Becuase other reporters store only one test result in one file.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
이춘석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 27 Jun 2019 05:40:13 +0000 (14:40 +0900)]
Define minial NNFW API (#5463)
* Define minial NNFW API
- define a minimal set of runtiem API
Signed-off-by: Chunseok Lee <chunseok.lee@samsung.com>
* remove meta info getter
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 27 Jun 2019 04:46:58 +0000 (13:46 +0900)]
[nnpackage] Modify main-model to models to support multiple models (#5486)
For multiple model support in future, main-model is changed to models.
`models` is an array of model paths.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
윤현식/On-Device Lab(SR)/Principal Engineer/삼성전자 [Thu, 27 Jun 2019 04:27:35 +0000 (13:27 +0900)]
[customOp] Added a figure for workflow (#5495)
* [customOp] added a figure for workflow
This adds a figure for workflow to prepare a model with custom operation.
Signed-off-by: Hyun Sik Yoon <hyunsik.yoon@samsung.com>
* revised diagram
Fix build of PACL (#5499)
Fix failing build of PACL caused by #5492
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
Fix rank calculation in executors (#5480)
Assign either rank or zero if there isn't any like in notify()
Also moved calculateRank into DataflowExecutor
Signed-off-by: Poshshoev Dilshodzhon <d.poshshoev@samsung.com>
Use polymorphic_downcast instead of dynamic_cast. (#5493)
Use `polymorphic_downcast` instead of `dynamic_cast` to avoid unnecessary overhead as was suggested in https://github.sec.samsung.net/STAR/nnfw/pull/5383#discussion_r200703.
Remove several redundant `dynamic_cast`s.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 26 Jun 2019 09:39:06 +0000 (18:39 +0900)]
[kbenchmark] Add filter option (#5360)
This option allows to run benchmark whose name matches the regex.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
Vladimir Plazun/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 26 Jun 2019 09:36:10 +0000 (12:36 +0300)]
[neurun] fix ExecutorBase::getOutput() (#5494)
ExecutorBase::getOutput() was using model->inputs instead of outputs
Signed-off-by: Vladimir Plazun <v.plazun@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Wed, 26 Jun 2019 09:27:28 +0000 (18:27 +0900)]
[nnpackage] Add version attribute in manifest (#5484)
* [nnpackage] Add version attribute in manifest
Introduce major-version, minor-version, patch-version.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
* Remove the word `API` used in `version` attribute
Rename element_nums to num_elements (#5492)
Rename `element_nums` methods of `ITensor` and `Shape` classes to more appropriate `num_elements`.
Reuse `num_elements` in several places to reduce code duplication.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
[neurun] Fix kernel shapes for Conv2D and DepthwiseConv2D (#5461)
* [neurun] Fix kernel shapes for Conv2D and DepthwiseConv2D
* Remove `neurun::model::Shape::asKernel`
* Remove similar no longer used method `asMatrix`
* Remove redundant and not used method `asTensor`
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
* * Revert some unrelated changes.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 08:42:39 +0000 (17:42 +0900)]
[custom op] initial commit for custom op documentation (#5485)
We would like to gather all information about custom operation in one place.
We will start with requirements from nnpackage 00_requirments.md.
Next, we will have diagram(s) for candidate architecture and overall process.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 25 Jun 2019 06:52:33 +0000 (15:52 +0900)]
[MemoryManager] Introduce interface apis of ITensorBuilder (#5469)
On arm_compute::Memory classes, constant should be allocated before
prepare() after configure(). To do this, below functions will be used.
- registerModelObject
- markConstant
- isConstant
Some acl_kernels support deallocating constants unused. To do this,
- deallocateConstants
For arm_compute::LifetimeManager class, we should track the
operands' lifetime. To do this,
- notifyFirstUseIf
- notifyLastUseIf
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 06:51:58 +0000 (15:51 +0900)]
[nnpackage] initial commit (specification and schema) (#5462)
* nnpackage initial commit (specification and schema)
It is the initial commit of nnpackage specification and specification.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
이성재/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 25 Jun 2019 06:37:58 +0000 (15:37 +0900)]
Add COPYRIGHT (#5482)
- Add COPYRIGHT notice to join Samsung Inner Source Project
Signed-off-by: Sung-Jae Lee <sj925.lee@samsung.com>
윤지영/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 25 Jun 2019 02:01:05 +0000 (11:01 +0900)]
[kbenchmark] Add operation class for loading operation info (#5359)
This patch loads operation informations from config file.
And it executes kernel benchmark test using the operation info.
The result is stored by default in text file.
Signed-off-by: Jiyoung Yun <jy910.yun@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 10:13:21 +0000 (19:13 +0900)]
Introduce ObjectManager to replace Operands (#5464)
Introduce template class `ObjectManager` class which replaces
`Operands` and it will replace `Operations` and `SubgraphContext`.
Since these three classes basically do the same thing but index type and
object type are different.
`ObjectManager` does the following:
- Manages the lifetime of objects
- Create an object and associate with a unique index for the object
- Automatically an index for each object
- Access to an object with the associated index
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 10:03:50 +0000 (19:03 +0900)]
[MemoryManager] Apply createMemoryManager to each TensorBuilder (#5477)
Apply createMemoryManager to each TensorBuilder. However, until
TensorBuilders' notify{First|Last|UseIf APIs lands, do not use
LinearMemoryManager.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 08:04:22 +0000 (17:04 +0900)]
[Interp] Reshape kernel in interpreter (#5453)
Enable reshape operation in interpreter
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 24 Jun 2019 08:03:40 +0000 (17:03 +0900)]
[Interp] Fix input/output setting (#5456)
Replace input/output tensor setting instead of using insert for multiple inference using one interpreter type executor
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 06:55:22 +0000 (15:55 +0900)]
[neurun] Separate prepare of TemplTensorBuilder (#5473)
Separate prepare of TemplTensorBuilder to buildTensors and
buildSubtensors
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 06:34:46 +0000 (15:34 +0900)]
Introduce AclLinearMemoryManager (#5466)
Introduce AclLinearMemoryManager for wrapping arm_compute::Memory
classes
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 05:42:02 +0000 (14:42 +0900)]
[MemoryManager] Introduce createMemoryManager on each acl backend (#5468)
This createMemoryManager function on each acl backend creates
MemoryManager according to each executor's type and delivered to
TensorBuilder's ctor.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 05:03:02 +0000 (14:03 +0900)]
Add initConstant to Utils.h (#5467)
This util `initConstant` will be used in backend::TensorBuilders
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 04:42:25 +0000 (13:42 +0900)]
[MemoryManager] Apply MemoryManager to Executors (#5447)
Apply MemoryManager to { Linear|Dataflow|Parallel } Executor
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 24 Jun 2019 04:42:11 +0000 (13:42 +0900)]
Apply MemoryManager into FullyConnectedReshapingLayer (#5465)
Apply arm_compute::IMemoryManager into { CL | NE }FullyConnectedReshapingLayer
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 21 Jun 2019 06:19:43 +0000 (15:19 +0900)]
Introduce xprobe library (#5452)
This commit introduces xprobe library which provides various
instrumentation probes for performance analysis.
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
[neurun] Move `Layout` enum from `operand` to `model` namespace (#5441)
* Move enum class `Layout` from `graph::operand` namespace to `model`
* Fix usages of this class
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 20 Jun 2019 04:55:57 +0000 (13:55 +0900)]
Revise HowToContribute.md (#5445)
Revise HowToContribute.md with our new reviewing process
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Jun 2019 04:53:46 +0000 (13:53 +0900)]
[Interp] Update generated test skiplist (#5454)
Remove supporting operations in skiplist
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Jun 2019 04:28:11 +0000 (13:28 +0900)]
Skip analysis multiple parent tensor (#5451)
* Skip analysis multiple parent tensor
Ignore setting parent tensor info to all childrun tensor if one of child tensor have different parent tensor
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Remove dead code
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Thu, 20 Jun 2019 03:56:21 +0000 (12:56 +0900)]
Fix parallel executor finishing condition (#5429)
Finishing condition must be processed with the lock, so the condition is
now inside the `while` body.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Thu, 20 Jun 2019 02:10:24 +0000 (11:10 +0900)]
[Interp] Use Buffer class in interpreter tensor (#5436)
* [Interp] Use Buffer class in interpreter tensor
Instead of use pointer directly, use Buffer class in interpreter tensor
Rename tensor data pointer field setter
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix error message
* Update Tensor.h
- Introduce getter to share Data shared pointer
- Change setter to set Data instead of ExternalData
- Add const keyword for Data object
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Wed, 19 Jun 2019 10:01:30 +0000 (13:01 +0300)]
Added support for models with multiple input tensors (#5405)
* Added support for models with multiple input tensors
Added support for models with multiple input tensors
Various minor fixes
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
* Unhandled case handled and function renamed
Removed dependence on uint64_t in signature.
Added a check for incorrect number of files given.
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
* Review fixes: codesyle and error message clarification
Review fixes: codesyle and error message clarification
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 08:34:32 +0000 (17:34 +0900)]
[Loader] Add supporting operations (#5449)
Add supporting operations
- BuiltinOperator_ADD
- BuiltinOperator_RELU
- BuiltinOperator_TRANSPOSE
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 08:33:34 +0000 (17:33 +0900)]
Pad operation frontend acl-cl backend (#5443)
Introduce pad operation frontend and acl-cl backend
Enable framework and generated test for pad operation
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 07:49:03 +0000 (16:49 +0900)]
[Loader] Fix quantizaion info loading (#5450)
Check nullptr to get quantizaion info
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 07:37:18 +0000 (16:37 +0900)]
Remove pad in armcompute-ex (#5448)
Remove unused pad implementation in armcompute-ex
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 04:21:06 +0000 (13:21 +0900)]
[pacl] Use pad acl 19.02 kernel (#5438)
Use pad acl 19.02 kernel instead of acl-ex library
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Wed, 19 Jun 2019 02:03:30 +0000 (11:03 +0900)]
[MemoryManager] Apply MemoryManager to TensorBuilder on ACL backend (#5407)
Each TensorBuilder on each acl backend such as cl and neon has
AclMemoryManager instead of Tensors.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Wed, 19 Jun 2019 01:02:40 +0000 (10:02 +0900)]
Introduce pad operation in neurun (#5435)
* Introduce pad operation in neurun
Define pad operation node in neurun
Add validation check for pad operation
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Release build fix and remove cassert header include
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Remove virtual keyword
Андрей Шедько/AI Tools Lab /SRR/Engineer/삼성전자 [Tue, 18 Jun 2019 11:13:44 +0000 (14:13 +0300)]
Added Scheduling to Dataflow executors (#5410)
* Use Profile-based Scheduler for Dataflow executor job scheduling
Use Profile-based Scheduler for Dataflow executor job scheduling
Fixed some incorrect constants in Scheduler
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
* Review fixes: mostly codestyle
Review fixes: codestyle and Magic number removed
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
* Moved Indexed Ranks inside Dataflow executor
Moved Indexed Ranks inside Dataflow executor
Signed-off-by: Andrei Shedko <a.shedko@samsung.com>
이상규/On-Device Lab(SR)/Principal Engineer/삼성전자 [Tue, 18 Jun 2019 10:33:02 +0000 (19:33 +0900)]
Remove redundant virtual keyword from neurun's operation/*Node.h (#5437)
This patch removes redundant virtuals from `runtimes/neurun/core/include/model/operation/*Node.h`.
Signed-off-by: Sanggyu Lee <sg5.lee@samsung.com>
김용섭/On-Device Lab(SR)/Engineer/삼성전자 [Tue, 18 Jun 2019 04:41:44 +0000 (13:41 +0900)]
[MemoryManager] Apply MemoryManager to TensorBuilder on CPU (#5406)
MemoryManager on CPU has MemoryPlanner, Allocator and Tensors instead of
TensorBuilder on CPU.
Signed-off-by: Yongseop Kim <yons.kim@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Tue, 18 Jun 2019 04:24:12 +0000 (13:24 +0900)]
[Interp] Introduce max pool operation in interpreter (#5355)
Introduce max pool operation for float32 type in interpreter
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Jun 2019 10:18:07 +0000 (19:18 +0900)]
[Interp] Introduce Buffer class (#5401)
* [Interp] Introduce Buffer class
Introduce Buffer class to handle writable data area
- Allocate internally
- Comes from outside (ex. model output)
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Fix comment, include guard and add const function keyword
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Jun 2019 10:15:56 +0000 (19:15 +0900)]
Remove axis restriction on concat elimination (#5414)
* Remove axis restriction on concat elimination
Remove axis restruction that is allowed channel axis only on concat elimination
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
* Remove old comment
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Mon, 17 Jun 2019 08:16:37 +0000 (17:16 +0900)]
Clean header inclusion (#5423)
For acl_cl and acl_neon StageGenerator implementation
- Remove unnecessary newlines
- Remove unused inclusion
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Mon, 17 Jun 2019 08:12:03 +0000 (17:12 +0900)]
[Interp] Depthwise conv kernel in interpreter (#5425)
Enable depthwise conv operation for float32 type in interpreter
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
Disallow copying of model::Operation class (#5383)
Mark copy constructor and copy assignment operator as deleted to avoid unintentional copying.
Signed-off-by: Sergei Barannikov <s.barannikov@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 14 Jun 2019 08:09:03 +0000 (17:09 +0900)]
Use `reset()` for unique_ptr freeing (#5420)
This commit revises to call `reset()` instead of using keyword
`delete[]` in `MemoryPlanner.h`.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
이한종/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 14 Jun 2019 08:07:28 +0000 (17:07 +0900)]
Apply Concat Elimination for DataflowExecutor (#5409)
* Apply Concat Elimination for DataflowExecutor
This commit applies Concat Elimination to Dataflow/ParallelExecutor.
Instead of actually removing the operation, create a IFunction that does
nothing and execute it at runtime. This is a very simple way to apply
Concat Elimination for very small overhead.
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Fix unintended deallocation
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
* Fix acl_neon and extract NopFunction
Signed-off-by: Hanjoung Lee <hanjoung.lee@samsung.com>
오형석/On-Device Lab(SR)/Staff Engineer/삼성전자 [Fri, 14 Jun 2019 08:05:56 +0000 (17:05 +0900)]
Interpreter test script (#5417)
Divide standalone interpreter test script from x64 build script
Use interpreter test script in x64 test and armv7l coverage test
Signed-off-by: Hyeongseok Oh <hseok82.oh@samsung.com>
장지섭/On-Device Lab(SR)/Engineer/삼성전자 [Fri, 14 Jun 2019 08:05:45 +0000 (17:05 +0900)]
Remove calcOffset methods using Coordinate4D (#5416)
This commit removes calcOffset methods using Coordinate4D from classes of backend tensor
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>