Comparison of deep learning software
From Wikipedia, the free encyclopedia
Page Module:Message box/ambox.css has no content.
This article may contain original research. (April 2026) |
Page Module:Message box/ambox.css has no content.
This article or section possibly contains original synthesis. Source material should verifiably mention and relate to the main topic. (April 2026) |
The following tables compare notable software frameworks, libraries, and computer programs for deep learning applications.
Deep learning software by name
| Software | Creator | Initial release | Software license[a] | Template:Verth | Platform | Written in | Interface | OpenMP support | OpenCL support | CUDA support | Template:Verth | Automatic differentiation[1] | Has pretrained models | Template:Verth | Template:Verth | Template:Verth | Template:Verth | Template:Verth |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| BigDL | Jason Dai (Intel) | 2016 | Apache 2.0 | Yes | Apache Spark | Scala | Scala, Python | No | No | Yes | Yes | Yes | Yes | |||||
| Caffe | Berkeley Vision and Learning Center | 2013 | Template:Open source | Yes | Linux, macOS, Windows[2] | C++ | Python, MATLAB, C++ | Yes | Under development[3] | Yes | No | Yes | Yes[4] | Yes | Yes | No | ? | No[5] |
| Chainer | Preferred Networks | 2015 | Template:Open source | Yes | Linux, macOS | Python | Python | No | No | Yes | No | Yes | Yes | Yes | Yes | No | Yes | No[6] |
| Deeplearning4j | Skymind engineering team; Deeplearning4j community; originally Adam Gibson | 2014 | Apache 2.0 | Yes | Linux, macOS, Windows, Android (Cross-platform) | C++, Java | Java, Scala, Clojure, Python (Keras), Kotlin | Yes | No[7] | Yes[8][9] | No | Computational Graph | Yes[10] | Yes | Yes | Yes | Yes[11] | Yes |
| DeepSpeed | Microsoft | 2019 | Apache 2.0 | Yes | Linux, macOS, Windows | Python, C++, CUDA | Python | No | No | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes |
| Dlib | Davis King | 2002 | Boost Software License | Yes | Cross-platform | C++ | C++, Python | Yes | No | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes |
| Fastai | fast.ai | 2018 | Apache 2.0 | Yes | Linux, macOS, Windows | Python, CUDA | Python | No | No | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes |
| Flux | Mike Innes | 2017 | MIT | Yes | Linux, macOS, Windows (Cross-platform) | Julia | Julia | Yes | No | Yes | Yes[12] | Yes | Yes | No | Yes | Yes | ||
| Horovod | Uber Technologies | 2017 | Apache 2.0 | Yes | Linux, macOS, Windows | Python, C++, CUDA | Python | No | No | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes |
| Intel Data Analytics Acceleration Library | Intel | 2015 | Apache 2.0 | Yes | Linux, macOS, Windows on Intel CPU[13] | C++, Python, Java | C++, Python, Java[13] | Yes | No | No | No | Yes | No | Yes | Yes | Yes | ||
| Intel Math Kernel Library 2017 [14] and later | Intel | 2017 | Proprietary | No | Linux, macOS, Windows on Intel CPU[15] | C/C++, DPC++, Fortran | C[16] | Yes[17] | No | No | No | Yes | No | Yes[18] | Yes[18] | No | Yes | |
| Google JAX | 2018 | Apache 2.0 | Yes | Linux, macOS, Windows | Python | Python | Only on Linux | No | Yes | No | Yes | Yes | ||||||
| Keras | François Chollet | 2015 | MIT | Yes | Linux, macOS, Windows | Python | Python, R | Only if using Theano as backend | Can use Theano, Tensorflow or PlaidML as backends | Yes | No | Yes | Yes[19] | Yes | Yes | No[20] | Yes[21] | Yes |
| MATLAB + Deep Learning Toolbox (formerly Neural Network Toolbox) | MathWorks | 1992 | Proprietary | No | Linux, macOS, Windows | C, C++, Java, MATLAB | MATLAB | No | No | Train with Parallel Computing Toolbox and generate CUDA code with GPU Coder[22] | No | Yes[23] | Yes[24][25] | Yes[24] | Yes[24] | Yes | With Parallel Computing Toolbox[26] | Yes |
| Microsoft Cognitive Toolkit (CNTK) | Microsoft Research | 2016 | MIT[27] | Yes | Windows, Linux[28] (macOS via Docker on roadmap) | C++ | Python (Keras), C++, Command line,[29] BrainScript[30] (.NET on roadmap[31]) | Yes[32] | No | Yes | No | Yes | Yes[33] | Yes[34] | Yes[34] | No[35] | Yes[36] | No[37] |
| MindSpore | Huawei | 2020 | Apache 2.0 | Yes | Linux, Windows, macOS, EulerOS, openEuler, OpenHarmony, Oniro OS, HarmonyOS, Android | C++, Rust, Julia, Python, ArkTS, Cangjie, Java (Lite) | ||||||||||||
| ML.NET | Microsoft | 2018 | MIT | Yes | Windows, Linux, macOS | C#, C++ | C#, F# | Yes | ||||||||||
| Apache MXNet | Apache Software Foundation | 2015 | Apache 2.0 | Yes | Linux, macOS, Windows,[38][39] AWS, Android,[40] iOS, JavaScript[41] | Small C++ core library | C++, Python, Julia, MATLAB, JavaScript, Go, R, Scala, Perl, Clojure | Yes | No | Yes | No | Yes[42] | Yes[43] | Yes | Yes | Yes | Yes[44] | No |
| Neural Designer | Artelnics | 2014 | Proprietary | No | Linux, macOS, Windows | C++ | Graphical user interface | Yes | No | Yes | No | Analytical differentiation | No | No | No | No | Yes | Yes |
| OpenNN | Artelnics | 2003 | GNU LGPL | Yes | Cross-platform | C++ | C++ | Yes | No | Yes | No | ? | Yes[45] | No | No | No | ? | Yes |
| PlaidML | Vertex.AI, Intel | 2017 | Apache 2.0 | Yes | Linux, macOS, Windows | Python, C++, OpenCL | Python, C++ | ? | Some OpenCL ICDs are not recognized | No | No | Yes | Yes | Yes | Yes | Yes | Yes | |
| PyTorch | Meta AI | 2016 | Template:Open source | Yes | Linux, macOS, Windows, Android[46] | Python, C, C++, CUDA | Python, C++, Julia, R[47] | Yes | Via separately maintained package[48][49][50] | Yes | Yes | Yes | Yes | Yes | Yes | Yes[51] | Yes | Yes |
| PyTorch Lightning | Lightning-AI (originally William Falcon)[52] | 2019 | Apache 2.0 | Yes | Linux, macOS, Windows | Python | Python | Yes | Via PyTorch | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes[53] | Yes |
| Apache SINGA | Apache Software Foundation | 2015 | Apache 2.0 | Yes | Linux, macOS, Windows | C++ | Python, C++, Java | No | Supported in V1.0 | Yes | No | ? | Yes | Yes | Yes | Yes | Yes | Yes |
| TensorFlow | Google Brain | 2015 | Apache 2.0 | Yes | Linux, macOS, Windows,[54][55] Android | C++, Python, CUDA | Python (Keras), C/C++, Java, Go, JavaScript, R,[56] Julia, Swift | No | On roadmap[57] but already with SYCL[58] support | Yes | Yes | Yes[59] | Yes[60] | Yes | Yes | Yes | Yes | Yes |
| TensorRT | Nvidia | 2017 | Proprietary | No | Linux, Windows on Nvidia GPUs | C++, Python, CUDA | C++, Python | No | No | Yes | No | No | No | No | Yes | No | No | Yes |
| Theano | Université de Montréal | 2007 | Template:Open source | Yes | Cross-platform | Python | Python (Keras) | Yes | Under development[61] | Yes | No | Yes[62][63] | Through Lasagne's model zoo[64] | Yes | Yes | Yes | Yes[65] | No |
| Torch | Ronan Collobert, Koray Kavukcuoglu, Clement Farabet | 2002 | Template:Open source | Yes | Linux, macOS, Windows,[66] Android,[67] iOS | C, Lua | Lua, LuaJIT,[68] C, utility library for C++/OpenCL[69] | Yes | Third party implementations[70][71] | Yes[72][73] | No | Through Twitter's Autograd[74] | Yes[75] | Yes | Yes | Yes | Yes[66] | No |
| RANT (Real-time Artificial Neural Tool)[76] | Douglas Santry | 2023 | Template:Open source | Yes | Linux, macOS, Windows | C++, Python | C++, Python | No | No | No | No | No | Yes | No | Yes | No | No | Yes |
| Wolfram Mathematica 10[77] and later | Wolfram Research | 2014 | Proprietary | No | Windows, macOS, Linux, Cloud computing | C++, Wolfram Language, CUDA | Wolfram Language | Yes | No | Yes | No | Yes | Yes[78] | Yes | Yes | Yes | Yes[79] | Yes |
| Software | Creator | Initial release | Software license[a] | Template:Verth | Platform | Written in | Interface | OpenMP support | OpenCL support | CUDA support | Template:Verth | Automatic differentiation[1] | Has pretrained models | Template:Verth | Template:Verth | Template:Verth | Template:Verth | Template:Verth |
Page Template:Reflist/styles.css has no content.
Comparison of machine learning model compatibility
[<span title="Script error: No such module "decodeEncode".">further explanation needed]
| Format name | Design goal | Compatible with other formats | Self-contained DNN Model | Pre-processing and Post-processing | Run-time configuration for tuning & calibration | DNN model interconnect | Common platform |
|---|---|---|---|---|---|---|---|
| TensorFlow, Keras, Caffe, Torch | Algorithm training | No | No / Separate files in most formats | No | No | No | Yes |
| ONNX | Algorithm training | Yes | No / Separate files in most formats | No | No | No | Yes |
See also
- Comparison of machine learning software
- Comparison of statistical packages
- Comparison of cognitive architectures
- Lists of open-source artificial intelligence software
- List of datasets for machine-learning research
- List of numerical-analysis software
- MLIR compiler — sub-project of the LLVM designed for machine learning, hardware acceleration, and high-level synthesis.
- tinygrad — being developed by George Hotz
References
Page Template:Reflist/styles.css has no content.
- ^ a b Page Module:Citation/CS1/styles.css has no content.Atilim Gunes Baydin; Barak A. Pearlmutter; Alexey Andreyevich Radul; Jeffrey Mark Siskind (20 February 2015). "Automatic differentiation in machine learning: a survey". arXiv:1502.05767 [cs.LG].
- ^ Page Module:Citation/CS1/styles.css has no content."Microsoft/caffe". GitHub. 30 October 2021.
- ^ Page Module:Citation/CS1/styles.css has no content."Caffe: a fast open framework for deep learning". GitHub. July 19, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."Caffe | Model Zoo". caffe.berkeleyvision.org.
- ^ Page Module:Citation/CS1/styles.css has no content.GitHub - BVLC/caffe: Caffe: a fast open framework for deep learning., Berkeley Vision and Learning Center, 2019-09-25, retrieved 2019-09-25
- ^ Page Module:Citation/CS1/styles.css has no content.Preferred Networks Migrates its Deep Learning Research Platform to PyTorch, 2019-12-05, retrieved 2019-12-27
- ^ Page Module:Citation/CS1/styles.css has no content."Support for Open CL: Issue #27: deeplearning4j/nd4j". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."N-Dimensional Scientific Computing for Java". Archived from the original on 2016-10-16. Retrieved 2016-02-05.
- ^ Page Module:Citation/CS1/styles.css has no content."Comparing Top Deep Learning Frameworks". Deeplearning4j. Archived from the original on 2017-11-07. Retrieved 2017-10-31.
- ^ Page Module:Citation/CS1/styles.css has no content.Chris Nicholson; Adam Gibson. "Deeplearning4j Models". Archived from the original on 2017-02-11. Retrieved 2016-03-02.
- ^ Page Module:Citation/CS1/styles.css has no content.Deeplearning4j. "Deeplearning4j on Spark". Deeplearning4j. Archived from the original on 2017-07-13. Retrieved 2016-09-01.
{{cite web}}: CS1 maint: numeric names: authors list (link) - ^ Page Module:Citation/CS1/styles.css has no content."Metalhead". FluxML. 29 October 2021.
- ^ a b Page Module:Citation/CS1/styles.css has no content."Intel® Data Analytics Acceleration Library (Intel® DAAL)". software.intel.com. November 20, 2018.
- ^ Page Module:Citation/CS1/styles.css has no content."Intel® Math Kernel Library Release Notes and New Features". Intel.
- ^ Page Module:Citation/CS1/styles.css has no content."Intel® Math Kernel Library (Intel® MKL)". software.intel.com. September 11, 2018.
- ^ Page Module:Citation/CS1/styles.css has no content."Deep Neural Network Functions". software.intel.com. May 24, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."Using Intel® MKL with Threaded Applications". software.intel.com. June 1, 2017.
- ^ a b Page Module:Citation/CS1/styles.css has no content."Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast". software.intel.com. March 21, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."Applications - Keras Documentation". keras.io.
- ^ Page Module:Citation/CS1/styles.css has no content."Is there RBM in Keras?: Issue #461: keras-team/keras". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Does Keras support using multiple GPUs?: Issue #2436: keras-team/keras". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."GPU Coder - MATLAB & Simulink". MathWorks. Retrieved 13 November 2017.
- ^ Page Module:Citation/CS1/styles.css has no content."Automatic Differentiation Background - MATLAB & Simulink". MathWorks. September 3, 2019. Retrieved November 19, 2019.
- ^ a b c Page Module:Citation/CS1/styles.css has no content."Neural Network Toolbox - MATLAB". MathWorks. Retrieved 13 November 2017.
- ^ Page Module:Citation/CS1/styles.css has no content."Deep Learning Models - MATLAB & Simulink". MathWorks. Retrieved 13 November 2017.
- ^ Page Module:Citation/CS1/styles.css has no content."Parallel Computing Toolbox - MATLAB". MathWorks. Retrieved 13 November 2017.
- ^ Page Module:Citation/CS1/styles.css has no content."CNTK/LICENSE.md at master: Microsoft/CNTK". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Setup CNTK on your machine". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."CNTK usage overview". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."BrainScript Network Builder". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content.".NET Support: Issue #960: Microsoft/CNTK". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."How to train a model using multiple machines?: Issue #59: Microsoft/CNTK". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Prebuilt models for image classification: Issue #140: microsoft/CNTK". GitHub.
- ^ a b Page Module:Citation/CS1/styles.css has no content."CNTK - Computational Network Toolkit". Microsoft Corporation.
- ^ Page Module:Citation/CS1/styles.css has no content."Restricted Boltzmann Machine with CNTK #534". GitHub, Inc. 27 May 2016. Retrieved 30 October 2023.
- ^ Page Module:Citation/CS1/styles.css has no content."Multiple GPUs and machines". Microsoft Corporation.
- ^ Page Module:Citation/CS1/styles.css has no content."Disclaimer". CNTK TEAM. 6 November 2021.
- ^ Page Module:Citation/CS1/styles.css has no content."Releases: dmlc/mxnet". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Installation Guide — mxnet documentation". Readthdocs.
- ^ Page Module:Citation/CS1/styles.css has no content."MXNet Smart Device". ReadTheDocs. Archived from the original on 2016-09-21. Retrieved 2016-05-19.
- ^ Page Module:Citation/CS1/styles.css has no content."MXNet.js". GitHub. 28 October 2021.
- ^ Page Module:Citation/CS1/styles.css has no content."— Redirecting to mxnet.io". mxnet.readthedocs.io.
- ^ Page Module:Citation/CS1/styles.css has no content."Model Gallery". GitHub. 29 October 2022.
- ^ Page Module:Citation/CS1/styles.css has no content."Run MXNet on Multiple CPU/GPUs with Data Parallel". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Model Types". 31 August 2023.
- ^ Page Module:Citation/CS1/styles.css has no content."PyTorch". Dec 17, 2021.
- ^ Page Module:Citation/CS1/styles.css has no content."Falbel D, Luraschi J (2023). torch: Tensors and Neural Networks with 'GPU' Acceleration". torch.mlverse.org. Retrieved 2023-11-28.
- ^ Page Module:Citation/CS1/styles.css has no content."OpenCL build of pytorch: (in-progress, not useable) - hughperkins/pytorch-coriander". GitHub. July 14, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."DLPrimitives/OpenCL out of tree backend for pytorch - artyom-beilis/pytorch_dlprim". GitHub. Jan 21, 2022.
- ^ Page Module:Citation/CS1/styles.css has no content."OpenCL Support: Issue #488: pytorch/pytorch". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Restricted Boltzmann Machines (RBMs) in PyTorch". GitHub. 14 November 2022.
- ^ https://github.com/williamFalcon
- ^ https://lightning.ai/docs/litserve/how-tos/parallelism-types
- ^ Page Module:Citation/CS1/styles.css has no content."Install TensorFlow with pip".
- ^ Page Module:Citation/CS1/styles.css has no content."TensorFlow 0.12 adds support for Windows".
- ^ Page Module:Citation/CS1/styles.css has no content.Allaire, J.J.; Kalinowski, T.; Falbel, D.; Eddelbuettel, D.; Yuan, T.; Golding, N. (28 September 2023). "tensorflow: R Interface to 'TensorFlow'". The Comprehensive R Archive Network. Retrieved 30 October 2023.
- ^ Page Module:Citation/CS1/styles.css has no content."tensorflow/roadmap.md at master". GitHub. January 23, 2017. Retrieved May 21, 2017.
- ^ Page Module:Citation/CS1/styles.css has no content."OpenCL support". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."TensorFlow". TensorFlow.
- ^ Page Module:Citation/CS1/styles.css has no content."Models and examples built with TensorFlow". GitHub. July 19, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."Using the GPU: Theano 0.8.2 documentation". Archived from the original on 2017-04-01. Retrieved 2016-01-21.
- ^ Page Module:Citation/CS1/styles.css has no content."gradient – Symbolic Differentiation — Theano 1.0.0 documentation". deeplearning.net.
- ^ Page Module:Citation/CS1/styles.css has no content."Automatic vs. Symbolic differentiation".
- ^ Page Module:Citation/CS1/styles.css has no content."Recipes/modelzoo at master: Lasagne/Recipes". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Using multiple GPUs — Theano 1.0.0 documentation". deeplearning.net.
- ^ a b Page Module:Citation/CS1/styles.css has no content."torch/torch7". GitHub. July 18, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."GitHub - soumith/torch-android: Torch-7 for Android". GitHub. 13 October 2021.
- ^ Page Module:Citation/CS1/styles.css has no content."Torch7: A MATLAB-like Environment for Machine Learning" (PDF).
- ^ Page Module:Citation/CS1/styles.css has no content."GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library". GitHub. 18 November 2020.
- ^ Page Module:Citation/CS1/styles.css has no content."Cheatsheet". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."cltorch". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Torch CUDA backend". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Torch CUDA backend for nn". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."Autograd automatically differentiates native Torch code: twitter/torch-autograd". GitHub. July 9, 2019.
- ^ Page Module:Citation/CS1/styles.css has no content."ModelZoo". GitHub.
- ^ Page Module:Citation/CS1/styles.css has no content."RANT".
- ^ Page Module:Citation/CS1/styles.css has no content."Launching Mathematica 10". Wolfram.
- ^ Page Module:Citation/CS1/styles.css has no content."Wolfram Neural Net Repository of Neural Network Models". resources.wolframcloud.com.
- ^ Page Module:Citation/CS1/styles.css has no content."Parallel Computing—Wolfram Language Documentation". reference.wolfram.com.