Skip to content

Latest commit

 

History

History
87 lines (59 loc) · 3.07 KB

README.md

File metadata and controls

87 lines (59 loc) · 3.07 KB

ND4J: Scientific Computing on the JVM

Join the chat at https://gitter.im/deeplearning4j/deeplearning4j

ND4J is an Apache2 Licensed open-sourced scientific computing library for the JVM. It is meant to be used in production environments rather than as a research tool, which means routines are designed to run fast with minimum RAM requirements.


Main Features

  • Versatile n-dimensional array object
  • Multiplatform functionality including GPUs
  • Linear algebra and signal processing functions

Specifics

  • Supports GPUs via CUDA and Native via Jblas and Netlib Blas.
  • All of this is wrapped in a unifying interface.
  • The API mimics the semantics of Numpy, Matlab and scikit-learn.

Modules

Several of these modules are different backend options for ND4J (including GPUs with JCublas).

  • api = core
  • instrumentation
  • java = java backend
  • jblas = jblas backend
  • jcublas-parent = jcublas backend (GPUs)
  • jdbc = Java Database Connectivity
  • jocl-parent = Java bindings for OpenCL
  • netlib-blas = netlib blas backend
  • scala-api = API for Scala users
  • scala-notebook = Integration with Scala Notebook

Documentation

Documentation is available at nd4j.org. Access the JavaDocs for more detail.


Installation

To install ND4J, there are a couple of approaches, and more information can be found on the ND4J website.

Install from Maven Central

  1. Search for nd4j in the Maven Central Repository to find the available nd4j jars.
  2. Include the appropriate dependency in your pom.xml.

Install from source

ND4J is actively developed. You can clone the repository, compile it, and reference it in your project.

Clone the repository:

$ git clone https://github.com/deeplearning4j/nd4j.git

Compile the project:

$ cd nd4j
$ mvn clean install -DskipTests -Dmaven.javadoc.skip=true

Add the local compiled file dependency (choose the module for your backend) to your pom.xml file:

<dependency>
    <groupId>org.nd4j</groupId>
    <artifactId>nd4j-jblas</artifactId>
    <version>0.0.3.5.5.4-SNAPSHOT</version>
</dependency>

Install from RPM (coming soon)

Download the rpm file. Then run the following command.

$ sudo rpm -iv [package.rpm]

Contribute

  1. Check for open issues, or open a new issue to start a discussion around a feature idea or a bug.
  2. If you feel uncomfortable or uncertain about an issue or your changes, feel free to contact us on Gitter using the link above.
  3. Fork the repository on GitHub to start making your changes to the master branch (or branch off of it).
  4. Write a test, which shows that the bug was fixed or that the feature works as expected.
  5. Send a pull request, and bug us on Gitter until it gets merged and published.