Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
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++ Jupyter Notebook Perl Scala Cuda Other
Branch: master
Clone or download
Latest commit 9092f17 Dec 12, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github minor typo fix (#17008) Dec 8, 2019
3rdparty mshadow: fix vector access (#17021) Dec 11, 2019
R-package [R package] Make R package compilation support opencv 4.0 (#16934) Dec 5, 2019
amalgamation Update dmlc-core (#16149) Sep 16, 2019
benchmark Infra for tvm op runtime dispatch (#16100) Oct 28, 2019
cd [CD] dynamic libmxet pipeline fix + small fixes (#16966) Dec 10, 2019
ci [CD] dynamic libmxet pipeline fix + small fixes (#16966) Dec 10, 2019
cmake Replace mxnet_option macro with standard CMAKE_DEPENDENT_OPTION (#17018) Dec 10, 2019
contrib improve example docs with installation instructions (#16625) Nov 2, 2019
cpp-package Fix the problem in printing feature in c++ API examples : feature_ext… Nov 26, 2019
docker [MXNET-1093] Add python3 Docker images for each MXNet release (#12791) Mar 12, 2019
docs Link fixes5 (#16986) Dec 9, 2019
example add inference benchmark script (#16978) Dec 9, 2019
include updating MXNet version to 1.6.0 in base.h for C APIs (#16905) Dec 6, 2019
julia Link fixes4 (#16764) Nov 13, 2019
make [CD] dynamic libmxet pipeline fix + small fixes (#16966) Dec 10, 2019
matlab Fixes for CI downloads (#14504) Mar 26, 2019
perl-package [Perl] - ndarray operator overloading enhancements (#16779) Nov 11, 2019
plugin changed constructor args (#15601) Jul 20, 2019
python array_split pr (#17032) Dec 12, 2019
scala-package swap wget to curl in Scala scripts (#17041) Dec 12, 2019
setup-utils Fixing links for website + Fixing search (#16284) Sep 27, 2019
src array_split pr (#17032) Dec 12, 2019
tests array_split pr (#17032) Dec 12, 2019
tools Merge make/pip and make/maven configurations (#17027) Dec 10, 2019
.clang-tidy [MXNET-860] Remove std::moves that have no affect (#12730) Oct 4, 2018
.codecov.yml Enable C++ coverage (#12642) Sep 24, 2018
.gitattributes [R] To ignore R-pkg when releasing on github (#7007) Jul 13, 2017
.gitignore Upgrade MKL-DNN dependency to v1.1 (#16823) Nov 25, 2019
.gitmodules Update TVM submodule (#16777) Nov 14, 2019
.mxnet_root CI docker revamp; Add Jetson, Raspberry and CentOS 7 build [MXNET-42]… Mar 9, 2018
.travis.yml Surpress subgraph log in CI (#16607) Oct 24, 2019
CMakeLists.txt Fix omp assert issue (#17039) Dec 11, 2019
CODEOWNERS subscribe to build and CD changes (#16192) Sep 19, 2019
CODE_OF_CONDUCT.md add code of conduct and conflict resolution (#16343) Oct 1, 2019
CONTRIBUTORS.md [DOC] Consistent capitalization: mxnet -> MXNet, scala -> Scala (#16041) Sep 8, 2019
DISCLAIMER Add DISCLAIMER and lxn2 GPG keys (#7344) Aug 5, 2017
KEYS add KEY for Tao Lv (#16081) Sep 4, 2019
LICENSE Upgrade MKL-DNN dependency to v1.0 (#16555) Oct 31, 2019
MKLDNN_README.md Fixing links for website + Fixing search (#16284) Sep 27, 2019
Makefile dynamic custom operator support (#15921) Dec 6, 2019
NEWS.md update NEWS.md and README.md (#16385) Oct 8, 2019
NOTICE Update NOTICE (#14043) Feb 5, 2019
README.md update NEWS.md and README.md (#16385) Oct 8, 2019
SECURITY.md Create SECURITY.md (#16573) Oct 23, 2019
appveyor.yml USE_NVRTC -> ENABLE_CUDA_RTC to fix maven build. Add compile-guard to… Nov 20, 2019
dev_menu.py add binary and docs build command options (#16514) Oct 18, 2019
mkldnn.mk Upgrade MKL-DNN dependency to v1.1 (#16823) Nov 25, 2019
readthedocs.yml Update LICENSE File with subcomponents (#13808) Jan 10, 2019
snap.python Add snapcraft packaging (#4852) Mar 23, 2017
snapcraft.yaml bump up version from 1.5.0 to 1.6.0 on master (#15072) Jul 24, 2019

README.md


Apache MXNet (incubating) for Deep Learning

Master Docs License
CentOS CPU Build Status CentOS GPU Build Status Clang Build Status
Edge Build Status Miscellaneous Build Status Sanity Build Status
Unix CPU Build Status Unix GPU Build Status Website Build Status
Windows CPU Build Status Windows GPU Build Status
Documentation Status GitHub license

banner

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 more than a deep learning project. It is a collection of blue prints and guidelines for building deep learning systems, and interesting insights of DL systems for hackers.

Ask Questions

How to Contribute

What's New

Contents

Features

  • 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, Scala, C++, Java, Clojure, R, Go, Javascript, Perl, Matlab, and Julia
  • Cloud-friendly and directly compatible with AWS S3, AWS Deep Learning AMI, AWS SageMaker, HDFS, and Azure

License

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

History

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.

You can’t perform that action at this time.