#114114th of 168 in ML frameworks and libraries
mlpack
Header-only C++ machine learning library with CLI and multi-language bindings
Documentation ↗
(opens in a new tab)Website ↗
(opens in a new tab)Repository on GitHub ↗
(opens in a new tab)
- Stars
- 5.7k
- License
- custom license
- Last commit
- Nov 2026
- Last release
- Jun 2026
- Language
- C++
5,579 on 21 Apr 20265,724 on 10 Nov 2026
From GitHub's daily star counts.
Checked on GitHub.
Overview
mlpack is a header-only C++17 library implementing classical machine learning methods, built on Armadillo for linear algebra and ensmallen for optimization. It is also usable through command-line programs and Python, Julia, Go and R bindings. It targets researchers and production C++ deployments rather than LLM workloads.
Who it is for: C++ developers and researchers needing fast classical ML in production
Strengths
- Header-only: install headers and include <mlpack.hpp>, no separate library to build
- Bindings for Python, Julia, Go and R, plus command-line programs
- Fiscally sponsored by NumFOCUS with an open governance model
- Quickstart guides exist for each interface, plus an examples repository
Weaknesses
- Template-heavy code leads to long compile times unless mitigated
- Serializing neural networks needs a macro that significantly increases compile time
- Older pthreads-based OpenBLAS (0.3.26 and older) can oversubscribe threads and slow down
- Requires Armadillo, ensmallen and cereal installed alongside a C++17 compiler
What it needs
- Needs C++17 compiler, Armadillo >= 10.8, ensmallen >= 2.10.0, cereal >= 1.1.2, LAPACK/BLAS
Quick answers
Is mlpack open source?
Its code is public on GitHub under its own license terms; read them before you use it at work.
Also in ML frameworks and libraries
See all 168| Rank | Project | Score |
|---|---|---|
| 1 | transformersPython library defining open models for text, vision, audio and multimodal tasks | 94 out of 100 |
| 2 | pytorchPython tensor library with GPU support and tape-based autograd | 93 out of 100 |
| 3 | ultralyticsPython library and CLI for training and running YOLO vision models | 93 out of 100 |
| #4 | pytorch-image-modelsPyTorch library of image models, pretrained weights and training scripts | 93 out of 100 |
| #5 | supervisionPython toolkit for loading, annotating and counting computer vision detections | 92 out of 100 |