finds.dev← search

// the find

apache/mxnet

★ 20,806 · C++ · Apache-2.0 · updated Oct 2023

Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more

Apache MXNet is a deep learning framework that mixes symbolic graph execution with imperative NDArray programming (via the Gluon API), with first-class bindings for Python, Scala, Java, C++, R, and Julia. It was AWS's preferred framework for SageMaker for years, but as of October 2023 the project was retired to the Apache Attic, so this is really a framework in maintenance-free archive mode now.

The hybrid symbolic/imperative execution model let you write normal Python control flow and still get static-graph-level speed by hybridizing at call time, a trick PyTorch didn't match until TorchScript years later. The multi-language story is real, not an afterthought: full Scala/Java APIs backed by the same C++ core made it usable in JVM data pipelines, not just notebooks. The dependency scheduler automatically parallelizes ops across CPU/GPU without the caller managing threads, and distributed training is handled through ps-lite plus Horovod/BytePS support rather than being bolted on later.

Last commit is October 2023 and the project is formally retired to the Apache Attic — no new releases, no security patches, no dependency bumps, so adopting it today means you're maintaining a fork of an abandoned codebase. The build is a sprawling C++/CMake tree pulling in dlpack, mshadow, oneDNN, TVM, and ps-lite as submodules, which makes compiling from source for anything nonstandard (custom ops, ARM targets) a genuine time sink. The surrounding ecosystem — tutorials, pretrained model zoos, Stack Overflow activity, discuss.mxnet.io — has already migrated to PyTorch and TensorFlow, so you're on your own for anything beyond the official docs. Gluon 2.0's NumPy-compatible interface was a late pivot to catch up with PyTorch's ergonomics, meaning even at its peak the day-to-day API was playing catch-up rather than leading.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →