Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more
Python C++ Perl Jupyter Notebook Scala Cuda Other
Failed to load latest commit information.
.github Update PR Template (#9919) Mar 17, 2018
3rdparty Add stable nrm2 Reducer (#11573) Jul 11, 2018
R-package bump up version number to 1.3.0 to make nightly build to build with r… May 27, 2018
amalgamation [3rdparty] introduce tvm (#11130) Jun 3, 2018
benchmark/python xrange(10) --> range(10) for Python 3 (#11673) Jul 13, 2018
ci Fix nightly R installation (#11768) Jul 16, 2018
cmake Add path_suffixes for finding cudnn.lib (#11513) Jul 6, 2018
contrib/clojure-package Update (#11677) Jul 13, 2018
cpp-package Modernize Python 2 code to get ready for Python 3 (#11648) Jul 12, 2018
docker [Perl] Sparse feature. (#9988) Mar 6, 2018
docs Update Scala-MXNet install instructions (#11787) Jul 18, 2018
example Some Python 3 fixes in ./example (#11671) Jul 16, 2018
include/mxnet Fix flaky test test_gluon.test_hybrid_static_memory_switching (#11577) Jul 11, 2018
make [MXNET-472] ccache for docker builds (#11151) Jun 8, 2018
matlab Adding Apache Header to .m, .cfg, R and .mk files (#9499) Jan 22, 2018
perl-package MXNET-650 [Perl] Gluon ModelZoo, Gluon examples (#11642) Jul 13, 2018
plugin add input argument in warpctc layer (#11167) Jun 6, 2018
python fix rnn api docs (#11788) Jul 18, 2018
scala-package NPE in BucketingModule when providedLabel of DataBatch is not set (#1… Jul 18, 2018
setup-utils Update expected result in osx python install script (#10842) May 10, 2018
src fix test_countsketch flakiness (#11780) Jul 18, 2018
tests fix test_countsketch flakiness (#11780) Jul 18, 2018
tools Some Python 3 fixes in ./tools again (#11757) Jul 18, 2018
.codecov.yml [MXNET-561] Add test coverage reporting (#11344) Jun 21, 2018
.gitattributes [R] To ignore R-pkg when releasing on github (#7007) Jul 13, 2017
.gitignore Clojure Contrib Package (#11205) Jul 1, 2018
.gitmodules [3rdparty] introduce tvm (#11130) Jun 3, 2018
.mxnet_root CI docker revamp; Add Jetson, Raspberry and CentOS 7 build [MXNET-42]… Mar 9, 2018
.travis.yml Add h5py support to NDArrayIter (#6790) Jul 18, 2017
CMakeLists.txt CMake 3.12 will not detect a variable as empty string (#11584) Jul 8, 2018
CODEOWNERS Add CODEOWNERS (#11598) Jul 7, 2018 Docs build improvements (#11670) Jul 17, 2018
DISCLAIMER Add DISCLAIMER and lxn2 GPG keys (#7344) Aug 5, 2017
Jenkinsfile [MXNET-682] Disable Caffe import integration test (#11781) Jul 17, 2018
KEYS Add gpg keys (#10701) Apr 30, 2018
LICENSE [MXNET-533] MXNet-ONNX export (#11213) Jun 25, 2018 Add Windows MKLDNN Building Instruction (#10613) May 18, 2018
Makefile [MXNET-531] Integration Test for Scala (#11596) Jul 12, 2018 NEWS and README update to master (#11017) May 23, 2018
NOTICE Update NOTICE (#9706) Feb 6, 2018 Updating readme to fix broken docs status (#11102) Jun 1, 2018
appveyor.yml License Adds - some more (#9559) Jan 26, 2018 fix. (#11471) Jun 28, 2018
readthedocs.yml [docs] add favicon and fix index html title Mar 25, 2016
snap.python Add snapcraft packaging (#4852) Mar 23, 2017
snapcraft.yaml bump up version number to 1.3.0 to make nightly build to build with r… May 27, 2018

Apache MXNet (incubating) for Deep Learning

Master Docs License
Build Status Documentation Status GitHub license


Apache MXNet (incubating) is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to maximize efficiency and productivity. At its core, MXNet contains a dynamic dependency scheduler that automatically parallelizes both symbolic and imperative operations on the fly. A graph optimization layer on top of that makes symbolic execution fast and memory efficient. MXNet is portable and lightweight, scaling effectively to multiple GPUs and multiple machines.

MXNet is also more than a deep learning project. It is also a collection of blue prints and guidelines for building deep learning systems, and interesting insights of DL systems for hackers.

Join the chat at

What's New



  • Design notes providing useful insights that can re-used by other DL projects
  • Flexible configuration for arbitrary computation graph
  • Mix and match imperative and symbolic programming to maximize flexibility and efficiency
  • Lightweight, memory efficient and portable to smart devices
  • Scales up to multi GPUs and distributed setting with auto parallelism
  • Support for Python, R, Scala, C++ and Julia
  • Cloud-friendly and directly compatible with S3, HDFS, and Azure

Ask Questions


Licensed under an Apache-2.0 license.

Reference Paper

Tianqi Chen, Mu Li, Yutian Li, Min Lin, Naiyan Wang, Minjie Wang, Tianjun Xiao, Bing Xu, Chiyuan Zhang, and Zheng Zhang. MXNet: A Flexible and Efficient Machine Learning Library for Heterogeneous Distributed Systems. In Neural Information Processing Systems, Workshop on Machine Learning Systems, 2015


MXNet emerged from a collaboration by the authors of cxxnet, minerva, and purine2. The project reflects what we have learned from the past projects. MXNet combines aspects of each of these projects to achieve flexibility, speed, and memory efficiency.