Apache SINGA vs Deeplearning4j
Apache SINGA
singa.apache.orgDeeplearning4j
deeplearning4j.konduit.aiSide by side
| Figure | Apache SINGA | Deeplearning4j |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Deep Learning Software | 8.2 (#8) | 8.7 (#4) |
| Distributed training | SINGA supports data-parallel training across multiple GPUs on one node or across different nodes. | Deeplearning4j supports distributed neural network training on CPU or GPU clusters using Apache Spark. |
| License | The SINGA history page says the project is released under Apache License Version 2.0. | The Deeplearning4j project is licensed under Apache License 2.0. |
| Support | The project lists mailing lists, issue tracking, and a security page under its community resources. | The support page lists GitHub issues, community forums, Stack Overflow, and professional support from Konduit. |
| What it does | Apache SINGA is a distributed deep-learning library focused on training deep-learning and machine-learning models. | Eclipse Deeplearning4j is an open-source deep learning framework for the JVM, for building, training, and deploying neural networks in Java and Scala. |
Plans
In their own words
Apache SINGA
Apache SINGA is a free distributed deep-learning library for training deep-learning and machine-learning models. Its listed training mode is local, with data-parallel training across multiple GPUs on one node or across multiple nodes. GPU packages use CUDA and cuDNN, and Docker images are available for Nvidia GPUs. Installation options include pip, Docker, Conda, and source builds; pip documentation covers Python 3.9, 3.10, and 3.11. SINGA supports Python and C++, loads ONNX models, and can save models defined through its APIs in ONNX format. Optimizers listed include momentum-based stochastic gradient descent, Adam, RMSProp, and AdaGrad. Models can be queried in an RDBMS. The repository and Google Colab provide domain-specific models, including healthcare and science examples. It runs on Linux, macOS, Windows, and self-hosted environments, with on-premises deployment and Apache License 2.0 licensing.
Deeplearning4j
Deeplearning4j is an open-source framework for building, training, and deploying neural networks on the JVM, using Java or Scala. It can compute on CPUs through OpenBLAS and oneDNN, or use CUDA for GPU acceleration. For distributed training, it supports Apache Spark across CPU or GPU clusters. The framework can import models from Keras, TensorFlow, and ONNX, while Python4J provides Python interoperability from Java through CPython embedding. Its wider ecosystem includes ND4J, SameDiff, DataVec, Keras Import, Python4J, OmniHub, and Arbiter. Documented deployment targets include JVM microservices, mobile devices, IoT, and Spark environments. The libraries are licensed under Apache License 2.0 and governed by the Eclipse Foundation. The quickstart recommends Maven for Java projects, with Ivy and Gradle also workable. Documentation covers version 1.0.0-M2.1. The free plan is listed at free. Support options include GitHub issues, community forums, Stack Overflow, and professional support from Konduit.