Does anyone know of a Java DRMAA-API implementation that is known to work with PBS / Torque cluster software?
At the heart of this: I would like to submit jobs to a new custom linux cluster from Java using the DRMAA compatible API. The cluster is managed by PBS / Torque . Torque includes the PBS DRMAA 1.0 library for Torque / PBS, which contains the DRMA-C binding and provides libdrmaa.so and .a in the files. I know that the Sun grid engine includes drmaa.jar, which provides the Java-DRMAA API. In fact, I decided to use SGE, but it was decided to try PBS first.
The theory underlying this decision was:
"DRMAA is a standard and therefore the Java API only requires drmaa-c bindings compatible with standards." However, I could not find such a "common DRMAA-C-java API" and now I assume that this assumption is incorrect and that the Java libraries are engine specific.
Edit: I was just experimenting with the drmaa.jar package from the solar array and trying to cross-use it with pbs libdrmaa.so. No wonder this failed (JNI unsatisfied link error).
Conclusion: This is not so! After some searching, I see only these few options:
- Install GridWay ontop from Globus Toolkit. Established ontop by PBS, GridWay claims to provide DRMAA in Java. It looks too complicated for my installation.
- Scrap DRMAA, introduce the PBS calling system command qsub, qstat, etc. from Java. Simple but not very good.
Implement the drmaa call itself. Way too complicated ...
Switch to the Grid Engine. GE, in my opinion, is superior to PBS in terms of language bindings.
I prefer option 2. or 4. Any recommendations?
source share