Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 2.77 KB

QuickStart.md

File metadata and controls

50 lines (40 loc) · 2.77 KB

Requirements

DXRAM requires Java 1.8 to run on a Linux distribution of your choice (MacOSX does not work for deploying). DXRAM uses ZooKeeper for bootstrapping.

Dependencies

DXRAM requires a few dependencies such as ZooKeeper, gson or Log4j. The build system downloads them automatically.

Furthermore, DXRAM uses DXNet, DXUtils, DXMon and DXMem which, by default, are also downloaded. If you prefer to use a local copy of them (for development), clone the repository and place it next to the dxram root folder (same directory level). The build system automatically detects it's presence (if you don't change the folder's name) and compile the project with your local copy instead.

ZooKeeper

Download, install and setup ZooKeeper. See System Requirements in the admin guide of ZooKeeper.

Building and install

Our build system uses gradle and the project comes with a gradle-wrapper included, so you don't have to install gradle. Run ./gradlew installDist to build the project with default settings. Use -PbuildVariant= to specify different build types such as debug or release, e.g. ./gradlew installDist -PbuildVariant=release. The output with all necessary assets to run DXRAM is located in the build directory. Grab the dxram.zip and unpack it to a location of your choice to install it.

Starting DXRAM - Deployment

To easily deploy instances to either localhost or nodes of a cluster, we recommend using our deployment system cdepl. Checkout the repository for example scripts for deploying DXRAM and documentation about the deployment process.

However, you can also run dxram using the script bin/dxram from the build/dist output. Further instructions on how to run DXRAM manually are provided here.

Running applications on DXRAM

To run applications on DXRAM, please refer to this document.

InfiniBand

If you want to use InfiniBand instead of Ethernet network:

  • You need a cluster with InfiniBand hardware and software stack installed
  • Follow the instructions in the ibdxnet repository to compile the JNIIbdxnet library.
  • Put the libJNIIbdxnet.so file into the jni subfolder on your deployed dxram instance(s)
  • Open the dxram.conf and enable InfiniBand (under NetworkComponentConfig/m_core):
"m_device": "Infiniband"
  • Deploy your instances

Note: Depending on how you set up your environment, DXRAM/Ibdxnet needs permissions to pin memory (capability: CAP_IPC_LOCK).