Skip to content

ZubairNabi/ciel-java

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Read me first

This package contains the Java and Scala bindings for the CIEL distributed execution engine. These bindings allow you to implement CIEL tasks using the Java and Scala programming langauges.

Installing the CIEL Java bindings

Before installing the CIEL Java bindings, you will need to install the Java Development Kit version 5.0 or later, and Apache Maven.

Once you have installed these prerequisites, you can build the bindings and examples by typing the following in the current directory:

$ mvn install

Next, copy the bindings to your JAR library folder. For example, using $HOME/lib/ciel:

$ mkdir -p $HOME/lib/ciel
$ cp bindings/target/*.jar $HOME/lib/ciel
$ cp scala-bindings/target/*.jar $HOME/lib/ciel # optional for Scala.

Also copy the GSON JAR from your Maven repository to your JAR library folder. For example, if your Maven repository is in ~/.m2/repository:

$ cp ~/.m2/repository/com/google/code/gson/gson/1.7.1/*.jar $HOME/lib/ciel

If you want to enable Scala support, also copy the Scala runtime library to your JAR library folder:

$ cp ~/.m2/repository/org/scala-lang/scala-library/2.8.1/scala-library-2.8.1.jar $HOME/lib/ciel

Finally, update your CIEL configuration with the location of your JAR library:

$ ciel config --set java.jar_lib $HOME/lib/ciel

Testing your installation

The following command runs a simple test job, which prints "Hello, world!" on the terminal:

$ ciel java examples/target/ciel-examples-*.jar com.asgow.ciel.examples.HelloWorld

To run the Smith-Waterman example (on files named <PATH_TO_X> and <PATH_TO_Y>):

$ ciel java examples/target/ciel-examples-*.jar \
     com.asgow.ciel.examples.smithwaterman.SmithWaterman \
     <NUM_BLOCKS_X> <NUM_BLOCKS_Y> -P x=<PATH_TO_X> -P y=<PATH_TO_Y>

About

CIEL bindings for the Java programming language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 97.1%
  • Scala 2.0%
  • Other 0.9%