37 Commits

Author SHA1 Message Date
bartekkuncer
aa92db0220 Change inner mxnet flags nomenclature for oneDNN library (#19944)
This change includes:
* changing MXNET_USE_MKLDNN flag name to MXNET_USE_ONEDNN
* changing USE_MKLDNN flag name to USE_ONEDNN
* changing 3rdparty/mkldnn folder name to 3rdparty/onednn
* changing include/mkldnn folder name to include/onednn
* changing MKLDNN occurences in build and documentation files to ONEDNN
* adding Bartosz Kuncer to contributors list
2021-03-15 12:32:37 -04:00
Anna Karbownik
01387a20c3 Removed 3rdparty/openmp submodule (#19953) 2021-03-01 11:25:02 -05:00
Leonard Lausen
5dc404dfb0 NumPy compatible serialization API (#19417)
Adopt NumPy and SciPy serialization formats for npx save functions.
See https://numpy.org/neps/nep-0001-npy-format.html for details.

Fixes #18667 if users use the npx.save / npx.savez functions as npy format stores information about the endianness of the saved array. Loading legacy parameter formats is still supported. Saving legacy parameter formats is still supported via nd.save. Sparse arrays are saved to npz format in analogy to SciPy.
2020-11-19 14:44:37 -08:00
kpuatamazon
f9fef4d9f3 [LICENSE] Change intgemm to a submodule instead of fetch. (#19408)
* Change intgemm to a submodule instead of fetch.

This resolves the issue that LICENSE refered to 3rdparty/intgemm/LICENSE which was not present in the source because it was downloaded:

https://lists.apache.org/thread.html/r669576b6506f67ea96e9b1bd385b04f59c4e6e7fa1b13a6dc0abc7d9%40%3Cgeneral.incubator.apache.org%3E

* Exclude intgemm from license header check
2020-10-26 09:00:46 -07:00
Tao Lv
c9f8caaccf Update 3rdparty/mkldnn remote URL and pin to v1.3 (#17972)
* update onednn remote url

* checkout onednn v1.3 release

* fix format test

* make test
2020-04-11 12:06:43 +08:00
Tao Lv
3667e9a205 Update 3rdparty/mkldnn to v1.2.2 (#17313)
* fix cpp test

* update to dnnl v1.2-rc

* pin rls-v1.2

* build dnnl with DNNL_ENABLE_CONCURRENT_EXEC=ON

* update rls-v1.2

* update to formal 1.2 release

* try patch

* fix rnn

* pin rls-v1.2

* dnnl v1.2.1

* dnnl v1.2.2
2020-03-20 09:12:19 -07:00
reminisce
33602e510b Update TVM submodule (#16777)
* Update tvm

* update tvm for cuda with fp16
2019-11-14 15:59:39 -08:00
Sheng Zha
8c641b8551 remove mshadow submodule 2019-08-01 15:32:24 -07:00
Frank Liu
b6eac1da01 Change CUB submodule to track Nvidia CUB project. (#13322)
* Change CUB submodule to track Nvidia CUB project.

Directly change submodule URL will impact every developer.
"git submodule update" won't work, developer has to use
"git submodule sync" first.

* retrigger CI
2019-04-01 07:38:15 +08:00
Marek Kolodziej
c053262613 [MXNET-703] TensorRT runtime integration (#11325)
* [MXNET-703] TensorRT runtime integration

Co-authored-by: Clement Fuji-Tsang <caenorst@hotmail.com>
Co-authored-by: Kellen Sunderland <kellen.sunderland@gmail.com>

* correctly assign self._optimized_symbol in executor

* declare GetTrtCompatibleSubsets and ReplaceSubgraph only if MXNET_USE_TENSORRT

* add comments in ReplaceSubgraph

* Addressing Haibin's code review points

* Check that shared_buffer is not empty when USE_TENSORRT is set

* Added check that TensorRT binding is for inference only

* Removed redundant decl.

* WIP Refactored TRT integration and tests

* Add more build guards, remove unused code

* Remove ccache report

* Remove redundant const in declaration

* Clean Cmake TRT files

* Remove TensorRT env var usage

We don't want to use environment variables with TensorRT yet, the
logic being that we want to try and have as much fwd compatiblity as
possible when working on an experimental feature.  Were we to add
env vars they would have to be gaurenteed to work in the future until
a major version change.  Moving the functionality to a contrib call
reduces this risk.

* Use contrib optimize_graph instaed of bind

* Clean up cycle detector

* Convert lenet test to contrib optimize

* Protect interface with trt build flag

* Fix whitespace issues

* Add another build guard to c_api

* Move get_optimized_symbol to contrib area

* Ignore gz files in test folder

* Make trt optimization implicit

* Remove unused declaration

* Replace build guards with runtime errors

* Change default value of TensorRT to off

This is change applies to both TensorRT and non-TensorRT builds.

* Warn user when TRT not active at runtime

* Move TensorRTBind declaration, add descriptive errors

* Test TensorRT graph execution, fix bugs

* Fix lint and whitespace issues

* Fix typo

* Removed default value for set_use_tensorrt

* Improved documentation and fixed spacing issues

* Move static exec funcs to util files

* Update comments to match util style

* Apply const to loop element

* Fix a few namespace issues

* Make static funcs inline to avoid compiler warning

* Remove unused inference code from lenet5_train

* Add explicit trt contrib bind, update tests to use it

* Rename trt bind call

* Remove documentation that is not needed for trt

* Reorder arguments, allow position calling
2018-08-10 11:38:04 +02:00
Tianqi Chen
2a63114983 [3rdparty] introduce tvm (#11130) 2018-06-02 17:58:25 -07:00
Haibin Lin
16930c09d5 move dmlc-core & make" (#10231)
+cmake

amal

examples

update jenkins

udpate amal.py to force include 3p

update amal find_source logic

remove log

update license

move nnvm

misc nnvm updates

fix perl make
;

update whitelist

add missing license header

fix launcher.py

update submodule name

update amal expand file
2018-03-25 19:45:24 -07:00
Haibin Lin
3e2fb6af0d [MXNET-16] Move mshadow/ps-lite/dlpack to 3rdparty #10132 (#10138)
* move

* update cmake/make

* remove commment

* update license

* ps-lite move

* update license

* move mshadow for make

* mshadow cmake

* update license

* update readme

* Update Jenkinsfile

* update license file with paths
2018-03-21 23:31:19 -07:00
Chris Olivier
106f97f188 Profiling enhancements, python API, vtune and chrome tracing objects, etc. (#8972)
* Profiling enhancements

* Set new dmlc-core commit

* Address CR comments

* Update profiler.py

* lint
2018-02-23 10:35:05 -08:00
Da Zheng
c3e3a832bf Refactor operators and add MKLDNN (#9677)
* Remove MKL code.

* Integrate MKLDNN.

Update MXNet for MKLDNN.

Enable MKLDNN Relu.

Fix a compilation error.

Change Makefile for MKLDNN.

Remove infer storage in convolution.

Update MXNet for MKLDNN.

Support MKLDNN storage type in python.

Update activation.

Add MKLDNN base classes.

Implement MKLDNN fully connected.

Add MKLDNN convolution.

Update MKLDNN interface in NDArray.

MKLDNN convolution handle CreateMKLDNNData failure.

Add another GetMKLDNNData in NDArray.

Have mkldnn to define the data format.

Create output MKLDNN memory explicitly for FC.

Fix a bug in NDArray.

Fix a bug in GetWeightDesc.

Convert data layout if necessary in FC.

remove unnecessary print in MKLDNN convolution.

Add MKLDNN deconvolution.

Add MKLDNNStream to manage primitives and memories.

Use MKLDNNStream to register memory in NDArray.

Use MKLDNNStream to manage resources in operators.

Handle kAddTo in MKLDNN operators.

Fix a bug in deconvolution.

Fix bugs in NDArray.

Revert "Fix bugs in NDArray."

This reverts commit f5624a4aa9f9b9f9fe31f5e6cfa7a9752838fc4e.

Fix a bug in NDArray.

Fix a bug in NDArray.

Reorder MKLDNN memory to default format in SetTBlob.

Disable MKLDNN correctly.

Fix a bug in activation.

Reshape of NDArray supports MKLDNN.

Fix a memory ref bug in NDArray.

Reshape NDArray in MKLDNN FullyConnected.

Fix data format conversion.

Create MKLDNN NDArray in python.

Support Slice for MKLDNN NDArray.

Reduce the overhead of summing the result to the output array.

Avoid unnecessary memory copy in NDArray.

Fix a bug in data reordering.

Fix a bug in NDArray.

Don't hard code MKLDNN type.

Support dilation in MKLDNN convolution.

Fix a bug in sum results.

Rewrite GetMKLDNNData.

Add prepare_mkldnn.sh

Enable MKLDNN activation.

Fix a bug on FullyConnected.

Handle 3 dims for MKLDNN NDArray.

Fix a bug in MKLDNN FC.

Support MKLDNN storage in KV store.

Fix a bug in executor for non-default NDArray.

Fix a link error in cast_storage.cc.

Remove unnecessary function def

Fall back to def storage if the type isn't supported by MKLDNN.

Use NDArray for MKLDNN in python.

Reshape output of MKLDNN convolution.

Fix a bug in NDArray.

Support more operations in MKLDNN NDArray.

Fix a bug in deconvolution.

Fix bugs in MKLDNN deconvolution.

We still need to compute bias correctly.

Have elemwise binary ops to fall to default for MKLDNN.

Limit the cases that MKLDNN operations are called.

Force the layout of mkldnn::memory from NDArray.

Add MKLDNN softmax.

Fix output storage type of MKLDNN softmax.

Add MKLDNN sum.

Fix a bug in elemwise sum.

Fix a bug in MKLDNN softmax.

Fix a bug in imperative.

Clean up dispatch modes.

Remove redundant code.

MKLDNN Pooling Op integration

MKLDNN Pooling Op integration add missing file

fix mkldnn pooling op workspace issue

handle workspace in MKLDNN pooling correctly.

Use a non-MKLDNN op for testing.

Allow to share arguments and their gradients between executors.

Avoid using MKLDNN pooling when it's not supported.

Support MKLDNN properly.

Choose MKLDNN softmax more carefully.

Fix a bug in MKLDNN pooling.

Fall back if MKLDNN pooling isn't supported.

Fix a bug in Slice of NDArray.

Use int32 for workspace memory.

Exclude MKLDNN act with tanh.

Have two Reshape functions in NDArray.

Copy data for NDArray with diff shapes.

Add MKLDNN copy.

Add MKLDNN version of elemwise_add.

Add MKLDNN version of Flatten.

add mkldnn surport for concat

simplify MKLDNN Flatten.

Enalbe MKLDNN deconvolution with bias.

Fix a bug in CuDNN deconvolution.

avoid using MKLDNNStorage when it's not defined.

Remove ./cudnn_lrn-inl.h

Fix for make lint.

add mkldnn surport for concat

fix the coding style for pr of mkldnn concat

Only add input data for MKLDNN concat backward

Remove unnecessary TODO.

remove unnecessary __repr__ in MKLNDArray.

better condition check for readability.

Use macro when including mkldnn.hpp.

Revert "Use CoreOpRunner for refactored Ops."

This reverts commit a28586fc25.

Fix a bug in test core.

Limit MKLDNN ops being used.

Fix complains from "make pylint"

Move ContainStorage to common/utils.h

Limit MKLDNN concat being used.

Add license.

Fix amalgamation

Fix compilation error in mkldnn_ops-inl.h

Fix a bug in deconvolution.

Fix a bug in pooling.

MKLDNN ops allocates temp mem.

Fix a bug in pooling.

Allocate align memory from temp space.

Have parameter gradients stored in the default storage.

Handle all cases in CopyFrom.

Ensure NDArray returns memory with right memory descriptors.

use auto to define memory in the operator.

Use raw pointer for mkldnn memory.

Move more code to mkldnn_base.cc

Fix a compilation error.

Address review comments.

fix a bug in activation backward.

Miss a macro in mkldnn_base.cc

Fix a bug in data iterator in examples.

Avoid memory allocation in ReshapeMKLDNN.

Avoid memory allocation in storage cast.

Fix a bug in cast storage.

Handle sliced MKLDNN NDArray.

Use memcpy if NDArray uses default format.

Revert "Limit MKLDNN ops being used."

This reverts commit 75e2ae570d03483868ec4ed8ed46015c7fa6c6fb.

Enable mkldnn act backward has the same input layout.

Fix a bug in mkldnn activation.

Use MKLDNN sum in more cases.

Improve perf of reorder.

Avoid memory reorder in conv and deconv.

Avoid unnecessary storage cast in fallback path.

Revert "Use MKLDNN sum in more cases."

This reverts commit 7a21ebca8bbe17fde49c3b1ca3f31b835a33afb8.

Handle sliced ndarray in more cases.

Fix a complain from make lint.

Update Jenkins to test MKLDNN.

debug compiling mkldnn.

Use MKLDNN sum in more cases.

Add mkldnn as a submodule.

Compile with mkldnn in 3rdparty.

Fix some coding styles.

write the path to mkldnn lib in libmxnet.so.

use rpath with $ORIGIN.

Pack all lib files in Jenkins.

pack and unpack mxnet with MKLDNN.

Update Jenkinsfile

Update Jenkinsfile

Add mkldnn batch normalization

Fix bugs in BN.

Avoid memory allocation in MKLDNNCopy.

only use MKLDNN BatchNorm for special cases.

MKLDNN BatchNorm doesn't work well on the default layout.

Add MKL-DNN based LRN

Code Style Changes

Fix a bug in BN.

Fix a bug in LRN.

Handle non-default storage in memory plan.

Fix coding style.

Fix a compilation error without mkldnn.

Fix some coding styles for batch norm

Improve forward of convolution.

Add openmp and simd support to BN operator

Retrieve MKLDNN Conv primitive based on signature.

Retrieve Act primitive based on its signature.

Fix a bug in pooling.

Diable some MKLDNN activation and pooling.

Cast MKLDNN storage with diff data type.

Check if it's a view of NDArray.

Reshaped and sliced arrays share the same chunks.

Implement caching MKLDNN Act correctly.

Fix a bug in check_consistency.

Fix a potential bug when destroying NDArray.

Fix bugs when allocating mem in NDArray.

Fix coding style.

Add micro when using mkldnn in ndarray.

Fix a compilation error.

Fix a bug in concat.

Remove MKLDNNStorage.

handle diff layouts in CopyFromToDnsImpl.

Fallback correctly.

Force weight grad to use default layout.

Reorder weight arrays in (de)conv for faster inference.

Avoid caching TBlob from NDArray.

This commit may add some overhead of managing NDArray for each fallback.

Fix a bug in Flatten.

handle ndarray with def layout in mkldnn BN correctly.

Align to page when mkldnn is enabled.

Use default mem alloc for mkldnn.

Reuse NDArrays.

Support WriteInplace for sum.

fix complains from "make lint".

Avoid reallocation in NDArray.

Handle weight arrays with special MKLDNN layouts.

Remove unnecessary GetWeights.

Fix compilation error without MKLDNN.

Fix a bug in (de)conv for weight arrays.

Fix a minor bug in MKLDNN conv.

Fix a bug in MKLDNNOpSignature.

Reimplement fallback for MKLDNN ops.

Fix a bug in FallbackExecutor.

Add params in hashcode.

Invalidate data in outputs to accelerate.

Fix a minor bug.

Update mkldnn_base-inl.h

Add primitive caching for Pooling forward computation

Add hashcode in pooling parameters.

Support NDArray copy with types unsupported by MKLDNN.

Avoid using MKLDNN concat for negative dimension.

Fix make lint complain.

Disable mkldnn avg pooling for now.

Fix a compile warning.

Fix compile error when MKLDNN is disabled.

OP primitive cache: use memory as signature for MKLDNN storage type

Remove MKLDNN array in python.

Disable Clang tests in Jenkins.

Use mklml dockers to test mkldnn.

Update MKLDNN repo to zhengda's mkldnn repo.

Update MKLDNN repo to ashok's.

Fix a bug in fallback.

Change avg pooling algorithm to pooling_avg_include_padding

Fix a code style in mkldnn pooling.

Temp fix a bug in FC.

Revert "Disable Clang tests in Jenkins."

This reverts commit b4efa8f895.

Rebase and Refactor deconv  (#20)

* rebase to Da,Zheng refactor branch Jan.14,  add signature for mkldnn Deconv and modify classMKLDNNDeconvForward

* fix make lint complains

A simple way of caching BN inference.

cache BN forward for both training and inference.

Fix some minor problems in BN.

Fix a bug in caching BN.

force to build with avx2 in Jenkins.

Remove the remaining MKLDNNStorageType

Some minor updates in NDArray.

a lot of updates to address comments.

minor changes.

* Use NNVM interface.

Use NNVM interface for upsampling.

Use NNVM interface for convolution.

Use NNVM interface for deconvolution.

Use NNVM interface for FullyConnected.

Move NNVM interface to batch norm.

Use NNVM interface for depthwise convolution.

Use NNVM interface for softmax activation.

Use NNVM interface for pooling.

use NNVM interface for dropout.

Use NNVM interface for activation.

Use NNVM interface for CuDNN batch norm.

Use NNVM interface for CuDNN pooling.

Use NNVM interface for CuDNN softmax activation.

Use NNVM interface for CuDNN activation.

Use NNVM interface for CuDNN convolution.

Use NNVM interface for CuDNN deconvolution.

Move concat to nn/

Use NNVM interface for concat.

Fix headers in concat.

Move lrn to nn/.

Use NNVM interface for LRN.

Fix a compilation error in convolution.

Fix a compilation error in activation.

Fix coding style.

Fix coding style for make lint.

use enums in batch norm.

Use CoreOpRunner for refactored Ops.

Make FullyConnected stateless.

Make upsampling stateless.

Make pooling stateless.

Make batchnorm stateless.

Make SoftmaxActivation stateless.

Fix a code style problem.

pass amalgamation test for batch norm.

pass amalgamation test for dropout.

Get convolution ops from a function.

Fix compilation errors for GPU.

Fix thread local in diff platforms.

Avoid using thread_local for non-CuDNN conv/deconv.

Remove TODO in deconv.

Fix a bug in batch norm.

Fix a bug in fully connected.

Don't set #inputs for backward convolution.

Revert "Make pooling stateless."

* revert modification in test_executor.

* Fix a bug in FlattenStorageType.

* Remove BN debug.

* Remove remaining MXNET_USE_MKL2017

* Remove unused code in pooling.

* Fixing bugs in gtests.

* Fix lint errors.

* a lot of minor updates to address comments.

* Fix coding style in MKLDNN Pooling (#22)

* revert the code change in the previous code refactor.

* Fix a bug in pooling.

* LRN coding style changes (#21)

* LRN coding style change

* Add const for local variables

* Add req for LRN forward

* rebase code

* align API interface

* revert modification in test_executor.

* cast storage with MKLDNN properly.

* Minor updates to address comments.

* some minor updates.

* Switch to the master branch of MKLDNN.

* Minor updates to address comments.

* Update activation.cc

* Fix a bug in convert NDArray.

* Add gluon model zoo tests.

* Update GPU tests on model zoo.

* Avoid using mobilenet for GPU tests with gluon models.

mobilenet can't pass the test even without MKLDNN.

* Update GPU tests on gluon.

* change cmake to compile MKLDNN.

* update cmake for MKLDNN.

* Implement align myself.

* Switch to intel/mkl-dnn.

* Fix errors in align unittest.

* Add unit test for LRN.

* fix a compilation error.

* use storage_type_assign to determine storage type.

* avoid global pooling in mkldnn.

There is a bug in global pooling in mkldnn.

* compare all MKLDNN ops with native impls.

add MXNET_MKLDNN_DEBUG to control the test.

* Fix a bug in testing correctness.

* print the name of buggy operator.

* undo some modifications.

* Fix a bug on reshaped array.

* avoid testing outputs with NullOp.

* turn on MKLDNN tests in Jenkins.

* print each operator in MKLDNN tests.

* rename test_gluon_model_zoo.py

* Create hashcode for operator parameters properly.

* Add USE_MKL2017 back.

* Print warning messages.

* move batchnorm tests to nnvm interface.

* Delete batchnorm v1 tests.

* Get inputs and outputs in batchnorm tests.

* disable batchnorm tests for now.

* Fix GPU tests on gluon model zoo.

* Fix lint complains in tests.

* Remove simd from openmp instructions in BatchNorm (#24)

* Remove warnings.

* Fix MKLDNN 1st compile failure issue (#23)

* Fix compilation errors.

* Remove ARCH_OPT in Jenkins.

* Revert "avoid global pooling in mkldnn."

This reverts commit f6efd342e64968cb848c9193d80e929968b8052c.

* Move to the latest MKLDNN.

This fixes the bug in global pooling.

* WIP unit tests (#25)

* WIP unit tests

* some backward items initialized

* Make more C++ unit tests work for batch norm (#28)

* WIP unit tests

* some backward items initialized

* some backward items initialized

* some backward items initialized

* first unit test working

* Working on types

* backward types working for fp16 on first unit test

* backward types working for fp16 on first unit test

* backward types working for fp16 on first unit test

* .

* .

* some tests working

* fix input data

* hangle gpu<->cpu for setting values

* gpu working

* gpu working

* CAccessAsCPU class

* Fix varying type in AccessAsCPU

* starting to add channel axis tests

* TestChannelAxisSimple

* TestChannelAxisSimple

* run bidirectional

* run bidirectional

* run bidirectional

* CLEANUP

* CLEANUP

* ..

* noaxis

* ..

* lint

* revert

* revert

* Fix lint complains.

* Fix a minor problem in Makefile.

* fix GPU pooling.

* Disable modelzoo inference tests.

* update accuracy checks for MKLDNN.

* Fix MKLDNN pooling for global pooling.

* Fix Jenkins.

* Fix a bug in Jenkins.

* Fix Jenkins
2018-02-15 14:44:34 -08:00
Chris Olivier
afdb839600 Revert "Refactor operators & MKLDNN (#8302)" (#9661)
This reverts commit 2cc2aa2272.
2018-01-31 21:09:49 -08:00
Da Zheng
2cc2aa2272 Refactor operators & MKLDNN (#8302)
* Remove MKL code.

* Use NNVM interface.

Use NNVM interface for upsampling.

Use NNVM interface for convolution.

Use NNVM interface for deconvolution.

Use NNVM interface for FullyConnected.

Move NNVM interface to batch norm.

Use NNVM interface for depthwise convolution.

Use NNVM interface for softmax activation.

Use NNVM interface for pooling.

use NNVM interface for dropout.

Use NNVM interface for activation.

Use NNVM interface for CuDNN batch norm.

Use NNVM interface for CuDNN pooling.

Use NNVM interface for CuDNN softmax activation.

Use NNVM interface for CuDNN activation.

Use NNVM interface for CuDNN convolution.

Use NNVM interface for CuDNN deconvolution.

Move concat to nn/

Use NNVM interface for concat.

Fix headers in concat.

Move lrn to nn/.

Use NNVM interface for LRN.

Fix a compilation error in convolution.

Fix a compilation error in activation.

Fix coding style.

Fix coding style for make lint.

use enums in batch norm.

Use CoreOpRunner for refactored Ops.

Make FullyConnected stateless.

Make upsampling stateless.

Make pooling stateless.

Make batchnorm stateless.

Make SoftmaxActivation stateless.

Fix a code style problem.

pass amalgamation test for batch norm.

pass amalgamation test for dropout.

Get convolution ops from a function.

Fix compilation errors for GPU.

Fix thread local in diff platforms.

Avoid using thread_local for non-CuDNN conv/deconv.

Remove TODO in deconv.

Fix a bug in batch norm.

Fix a bug in fully connected.

Don't set #inputs for backward convolution.

* Integrate MKLDNN.

Update MXNet for MKLDNN.

Enable MKLDNN Relu.

Fix a compilation error.

Change Makefile for MKLDNN.

Remove infer storage in convolution.

Update MXNet for MKLDNN.

Support MKLDNN storage type in python.

Update activation.

Add MKLDNN base classes.

Implement MKLDNN fully connected.

Add MKLDNN convolution.

Update MKLDNN interface in NDArray.

MKLDNN convolution handle CreateMKLDNNData failure.

Add another GetMKLDNNData in NDArray.

Have mkldnn to define the data format.

Create output MKLDNN memory explicitly for FC.

Fix a bug in NDArray.

Fix a bug in GetWeightDesc.

Convert data layout if necessary in FC.

remove unnecessary print in MKLDNN convolution.

Add MKLDNN deconvolution.

Add MKLDNNStream to manage primitives and memories.

Use MKLDNNStream to register memory in NDArray.

Use MKLDNNStream to manage resources in operators.

Handle kAddTo in MKLDNN operators.

Fix a bug in deconvolution.

Fix bugs in NDArray.

Revert "Fix bugs in NDArray."

This reverts commit f5624a4aa9f9b9f9fe31f5e6cfa7a9752838fc4e.

Fix a bug in NDArray.

Fix a bug in NDArray.

Reorder MKLDNN memory to default format in SetTBlob.

Disable MKLDNN correctly.

Fix a bug in activation.

Reshape of NDArray supports MKLDNN.

Fix a memory ref bug in NDArray.

Reshape NDArray in MKLDNN FullyConnected.

Fix data format conversion.

Create MKLDNN NDArray in python.

Support Slice for MKLDNN NDArray.

Reduce the overhead of summing the result to the output array.

Avoid unnecessary memory copy in NDArray.

Fix a bug in data reordering.

Fix a bug in NDArray.

Don't hard code MKLDNN type.

Support dilation in MKLDNN convolution.

Fix a bug in sum results.

Rewrite GetMKLDNNData.

Add prepare_mkldnn.sh

Enable MKLDNN activation.

Fix a bug on FullyConnected.

Handle 3 dims for MKLDNN NDArray.

Fix a bug in MKLDNN FC.

Support MKLDNN storage in KV store.

Fix a bug in executor for non-default NDArray.

Fix a link error in cast_storage.cc.

Remove unnecessary function def

Fall back to def storage if the type isn't supported by MKLDNN.

Use NDArray for MKLDNN in python.

Reshape output of MKLDNN convolution.

Fix a bug in NDArray.

Support more operations in MKLDNN NDArray.

Fix a bug in deconvolution.

Fix bugs in MKLDNN deconvolution.

We still need to compute bias correctly.

Have elemwise binary ops to fall to default for MKLDNN.

Limit the cases that MKLDNN operations are called.

Force the layout of mkldnn::memory from NDArray.

Add MKLDNN softmax.

Fix output storage type of MKLDNN softmax.

Add MKLDNN sum.

Fix a bug in elemwise sum.

Fix a bug in MKLDNN softmax.

Fix a bug in imperative.

Clean up dispatch modes.

Remove redundant code.

MKLDNN Pooling Op integration

MKLDNN Pooling Op integration add missing file

fix mkldnn pooling op workspace issue

handle workspace in MKLDNN pooling correctly.

Use a non-MKLDNN op for testing.

Allow to share arguments and their gradients between executors.

Avoid using MKLDNN pooling when it's not supported.

Support MKLDNN properly.

Choose MKLDNN softmax more carefully.

Fix a bug in MKLDNN pooling.

Fall back if MKLDNN pooling isn't supported.

Fix a bug in Slice of NDArray.

Use int32 for workspace memory.

Exclude MKLDNN act with tanh.

Have two Reshape functions in NDArray.

Copy data for NDArray with diff shapes.

Add MKLDNN copy.

Add MKLDNN version of elemwise_add.

Add MKLDNN version of Flatten.

add mkldnn surport for concat

simplify MKLDNN Flatten.

Enalbe MKLDNN deconvolution with bias.

Fix a bug in CuDNN deconvolution.

avoid using MKLDNNStorage when it's not defined.

Remove ./cudnn_lrn-inl.h

Fix for make lint.

add mkldnn surport for concat

fix the coding style for pr of mkldnn concat

Only add input data for MKLDNN concat backward

Remove unnecessary TODO.

remove unnecessary __repr__ in MKLNDArray.

better condition check for readability.

Use macro when including mkldnn.hpp.

Revert "Use CoreOpRunner for refactored Ops."

This reverts commit a28586fc25.

Fix a bug in test core.

Limit MKLDNN ops being used.

Fix complains from "make pylint"

Move ContainStorage to common/utils.h

Limit MKLDNN concat being used.

Add license.

Fix amalgamation

Fix compilation error in mkldnn_ops-inl.h

Fix a bug in deconvolution.

Fix a bug in pooling.

MKLDNN ops allocates temp mem.

Fix a bug in pooling.

Allocate align memory from temp space.

Have parameter gradients stored in the default storage.

Handle all cases in CopyFrom.

Ensure NDArray returns memory with right memory descriptors.

use auto to define memory in the operator.

Use raw pointer for mkldnn memory.

Move more code to mkldnn_base.cc

Fix a compilation error.

Address review comments.

fix a bug in activation backward.

Miss a macro in mkldnn_base.cc

Fix a bug in data iterator in examples.

Avoid memory allocation in ReshapeMKLDNN.

Avoid memory allocation in storage cast.

Fix a bug in cast storage.

Handle sliced MKLDNN NDArray.

Use memcpy if NDArray uses default format.

Revert "Limit MKLDNN ops being used."

This reverts commit 75e2ae570d03483868ec4ed8ed46015c7fa6c6fb.

Enable mkldnn act backward has the same input layout.

Fix a bug in mkldnn activation.

Use MKLDNN sum in more cases.

Improve perf of reorder.

Avoid memory reorder in conv and deconv.

Avoid unnecessary storage cast in fallback path.

Revert "Use MKLDNN sum in more cases."

This reverts commit 7a21ebca8bbe17fde49c3b1ca3f31b835a33afb8.

Handle sliced ndarray in more cases.

Fix a complain from make lint.

Update Jenkins to test MKLDNN.

debug compiling mkldnn.

Use MKLDNN sum in more cases.

Add mkldnn as a submodule.

Compile with mkldnn in 3rdparty.

Fix some coding styles.

write the path to mkldnn lib in libmxnet.so.

use rpath with $ORIGIN.

Pack all lib files in Jenkins.

pack and unpack mxnet with MKLDNN.

Update Jenkinsfile

Update Jenkinsfile

Add mkldnn batch normalization

Fix bugs in BN.

Avoid memory allocation in MKLDNNCopy.

only use MKLDNN BatchNorm for special cases.

MKLDNN BatchNorm doesn't work well on the default layout.

Add MKL-DNN based LRN

Code Style Changes

Fix a bug in BN.

Fix a bug in LRN.

Handle non-default storage in memory plan.

Fix coding style.

Fix a compilation error without mkldnn.

Fix some coding styles for batch norm

Improve forward of convolution.

Add openmp and simd support to BN operator

Retrieve MKLDNN Conv primitive based on signature.

Retrieve Act primitive based on its signature.

Fix a bug in pooling.

Diable some MKLDNN activation and pooling.

Cast MKLDNN storage with diff data type.

Check if it's a view of NDArray.

Reshaped and sliced arrays share the same chunks.

Implement caching MKLDNN Act correctly.

Fix a bug in check_consistency.

Fix a potential bug when destroying NDArray.

Fix bugs when allocating mem in NDArray.

Fix coding style.

Add micro when using mkldnn in ndarray.

Fix a compilation error.

Fix a bug in concat.

Remove MKLDNNStorage.

handle diff layouts in CopyFromToDnsImpl.

Fallback correctly.

Force weight grad to use default layout.

Reorder weight arrays in (de)conv for faster inference.

Avoid caching TBlob from NDArray.

This commit may add some overhead of managing NDArray for each fallback.

Fix a bug in Flatten.

handle ndarray with def layout in mkldnn BN correctly.

Align to page when mkldnn is enabled.

Use default mem alloc for mkldnn.

Reuse NDArrays.

Support WriteInplace for sum.

fix complains from "make lint".

Avoid reallocation in NDArray.

Handle weight arrays with special MKLDNN layouts.

Remove unnecessary GetWeights.

Fix compilation error without MKLDNN.

Fix a bug in (de)conv for weight arrays.

Fix a minor bug in MKLDNN conv.

Fix a bug in MKLDNNOpSignature.

Reimplement fallback for MKLDNN ops.

Fix a bug in FallbackExecutor.

Add params in hashcode.

Invalidate data in outputs to accelerate.

Fix a minor bug.

Update mkldnn_base-inl.h

Add primitive caching for Pooling forward computation

Add hashcode in pooling parameters.

Support NDArray copy with types unsupported by MKLDNN.

Avoid using MKLDNN concat for negative dimension.

Fix make lint complain.

Disable mkldnn avg pooling for now.

Fix a compile warning.

Fix compile error when MKLDNN is disabled.

OP primitive cache: use memory as signature for MKLDNN storage type

Remove MKLDNN array in python.

Disable Clang tests in Jenkins.

Use mklml dockers to test mkldnn.

Update MKLDNN repo to zhengda's mkldnn repo.

Update MKLDNN repo to ashok's.

Fix a bug in fallback.

Change avg pooling algorithm to pooling_avg_include_padding

Fix a code style in mkldnn pooling.

Temp fix a bug in FC.

Revert "Disable Clang tests in Jenkins."

This reverts commit b4efa8f895.

Rebase and Refactor deconv  (#20)

* rebase to Da,Zheng refactor branch Jan.14,  add signature for mkldnn Deconv and modify classMKLDNNDeconvForward

* fix make lint complains

A simple way of caching BN inference.

cache BN forward for both training and inference.

Fix some minor problems in BN.

Fix a bug in caching BN.

force to build with avx2 in Jenkins.

Remove the remaining MKLDNNStorageType

Some minor updates in NDArray.

a lot of updates to address comments.

minor changes.

* revert modification in test_executor.

* Fix a bug in FlattenStorageType.

* Remove BN debug.

* Remove remaining MXNET_USE_MKL2017

* Remove unused code in pooling.

* Fixing bugs in gtests.

* Fix lint errors.

* a lot of minor updates to address comments.

* Fix coding style in MKLDNN Pooling (#22)

* revert the code change in the previous code refactor.

* Fix a bug in pooling.

* LRN coding style changes (#21)

* LRN coding style change

* Add const for local variables

* Add req for LRN forward

* rebase code

* align API interface

* revert modification in test_executor.

* cast storage with MKLDNN properly.

* Minor updates to address comments.

* some minor updates.

* Switch to the master branch of MKLDNN.

* Minor updates to address comments.

* Update activation.cc

* Fix a bug in convert NDArray.

* Add gluon model zoo tests.

* Update GPU tests on model zoo.

* Avoid using mobilenet for GPU tests with gluon models.

mobilenet can't pass the test even without MKLDNN.

* Update GPU tests on gluon.

* change cmake to compile MKLDNN.

* update cmake for MKLDNN.

* Implement align myself.

* Switch to intel/mkl-dnn.

* Fix errors in align unittest.

* Add unit test for LRN.

* fix a compilation error.

* use storage_type_assign to determine storage type.

* avoid global pooling in mkldnn.

There is a bug in global pooling in mkldnn.

* compare all MKLDNN ops with native impls.

add MXNET_MKLDNN_DEBUG to control the test.

* Fix a bug in testing correctness.

* print the name of buggy operator.

* undo some modifications.

* Fix a bug on reshaped array.

* avoid testing outputs with NullOp.

* turn on MKLDNN tests in Jenkins.

* print each operator in MKLDNN tests.

* rename test_gluon_model_zoo.py

* Create hashcode for operator parameters properly.
2018-01-31 13:31:41 -08:00
Pedro Larroy
1c8e066d5d Restore submodules to dmlc (#9069) 2017-12-14 18:34:38 -08:00
Pedro Larroy
fdd41a84b5 Add googletest as a 3rdparty library (#9016)
* [CMake] Compile with gtest

* [Make] Use gtest from 3rdparty in Make build

* [Clang] Fix warning

* [Windows] Misc test fixes

* [rebase] update mshadow...

* Add googletest as submodule

* googletest -> release-1.8.0
2017-12-14 08:25:26 -08:00
Chris Olivier
0df79533e8 Moved cub to 3rdparty (#8878) 2017-11-29 20:32:37 -08:00
Chris Olivier
1264313183 Add Intel openmp as a submodule and build for x86 architectures (#8730)
* Refreshed branch intel_openmp

* Disable Intel OpenMP local build for Windows until a Windows user can fix

* Ignore 3rdparty license headers
2017-11-22 14:38:55 -08:00
Mu Li
05a04c8af2 update cub url (#6625)
* update cub url

* update

* update

* update
2017-06-09 09:48:48 -07:00
Eric Junyuan Xie
e885c1b92d Create .gitmodules 2017-06-07 23:16:46 -07:00
Przemyslaw Tredak
8147e7e1d5 Update to version 1.7.0 of CUB (#6607)
* Update to version 1.7.0 of CUB

* Removed "shallow=true" option for CUB
2017-06-07 22:53:01 -07:00
ziheng
05e07287a7 Change Interface of NDArray & TBlob for DLPack Compatible (#6345)
* Change Interface of NDArray & TBlob for DLPack Compatible

Fix for cudnn operator

Fix cpp tests

* Update nnvm

* Fix for MKL mem

* Fix for windows macro

* Bump up version number to 0.10.1

* Update NDArray Save&Load

* trigger update

* Add test for legacy data load

* Use LegacyTShapeLoad

* trigger update

* Update tensor_blob.h
2017-05-29 23:37:08 -07:00
Chris Olivier
264927639e MKLML build in scalable build, warnings, rnn and ssd operators (#5533)
* MKLML build in scalable build, warnings, rnn and ssd operators

* Minore adjustment, remove convenience scripts

* Minore adjustment, remove convenience scripts

* FInal resync with 0.9

* Fix lint problems, allow breakpad in unit tests

* Fix cub again

* Not sure why this change keeps showiung back up

* Don't include libopencv_ts since its copy of gtest conflicts with ours

* Remove A file again

* cast-inl.h removed for the 20th time

* Fix some config builds for tests and nnvm

* Turn on CUDA default
2017-03-22 20:13:05 -07:00
Chris Olivier
3b7b6306c2 Scalable build and warning fixes (#5396)
* Scalable build and warning fixes

* Minor adjustments

* Scalable build and warning fixes

* Minor adjustments

* Remove unneeded link libraries

* Revert Size() back to dim()

* Make OpenMP required again

* Trying to make windows openmp config work

* Fixed build problem
2017-03-16 10:49:47 -07:00
Xingjian Shi
64bdd25665 use shallow for cub (#4807) 2017-01-26 16:22:22 +08:00
Antti-Pekka Hynninen
340f965e2b New AddTakeGradLargeBatch and SortByKey for GPUs (#4782)
* New AddTakeGradLargeBatch and SortByKey for GPUs

* Fixed tabs

* Updated criteria for choosing between AddTakeGrad and AddTakeGradLargeBatch

* Removed trailing whitespace
2017-01-25 09:04:06 -08:00
Tianqi Chen
bcc75473ad NNVM Refactor (#3194)
* Init nnvm change

* temp checkin

* Move TShape to NNVM

* Redirect Symbolic API to NNVM

* Add Op Prop Adapter

* Finish migrate in shape infer

* Pass all symbolic test

* temp commit

* enable aux data

* [EXEC] Basic version of exec for forward only

* [EXEC] Enable most optimizations, still wait grad and context

* fix legacy op with latest one

* Update NNVM NodeRef

* Adapt to newer interface

* ALl registry of backop is complete

* temp commit

* Hack finish backward pass

* [EXEC] One day pass

* [EXEC] Pass all operator unittest

* [EXEC] enable model parallel

* Fully pass all legacy tests

* Remove legacy symbolic code

* update news

* Make travis compile

* Fix python3

* Update viz module to new json format
2016-12-29 01:37:46 -08:00
muli
598795a33d [kvstore] refer to the dev branch of ps-lite 2015-10-20 01:43:17 -04:00
muli
cf0e6fb200 [kvstore] switch to mli/ps-lite 2015-10-19 16:57:55 -04:00
muli
26ff9f037a [kvstore] update modules 2015-10-07 21:28:27 -04:00
muli
51a1d97656 [kvstore] update gitmodleus 2015-10-07 21:26:36 -04:00
muli
122dfc570d [kvstore] add ps-lite 2015-10-02 22:22:22 -04:00
Bing Xu
8642c1ebd3 update submodule 2015-08-30 21:30:03 -06:00
Qiang Kou
5b609f366a gitsubmodules 2015-08-29 16:03:28 -04:00