I can't replicate these problems - I tried both the current trunk and v1.7 branches. All appears to be in order. The Java support compiles without error, and mpijavac appears and functions as it should.

What system are you using? Here's what I have:

Linux bend001 2.6.32-358.18.1.el6.x86_64 #1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
javac 1.7.0_45

As for the MPI.OBJECT issue: we completely revamped the Java bindings to (a) improve performance (they are now much, much closer to the C performance) and to make them better conform to the Java language standard terminology. So we are no longer compatible with the old mpiJava library - not only because of the APIs, but also because the new implementation is MPI-3 compliant.

The authors of the work are generating some documentation and papers on it. For now, you can look at the MPI man pages to see the Java binding syntax, or use the Javadoc output (that is in the trunk but may not be in 1.7 yet).

On Nov 15, 2013, at 6:04 AM, Christoffer Hamberg <christoffer.hamberg@gmail.com> wrote:


I'm currently trying to get the included java bindings running but as I've mentioned in a previous post I've had some problems. 

./configure --prefix=/opt/openmpi-1.9-java --without-openib --enable-static --with-threads=posix --enable-mpi-thread-multiple --enable-mpi-java --with-jdk-bindir=/usr/lib/jvm/java-7-openjdk-armhf/bin --with-jdk-headers=/usr/lib/jvm/java-7-openjdk-armhf/include

The configure succeeds without any errors, but the build breaks in ompi/mpi/java/c since the compiler doesn't include the jdk-headers. I fixed the corresponding Makefile to include it and it works.

The second error I get is in ompi/tools/wrappers/Makefile where it sets: 
am__append_1 = mpijavac.1
am__append_2 = mpijavac.1

shouldn't this be mpijavac.pl instead?

I changed it to .pl and it seems to build with any more errors, "mpirun java" works fine for some simple Java tests.

After this I tried some other tests using the MPI.OBJECT datatype, just to discover that it wasn't supported. I saw that it was included in mpiJava 1.2 and the current mpiJava in OMPI is 1.1(?). I guess the java bindings aren't that prioritized?

Do you have any advice for me to do, should I try to update the bindings or do you have any other recommendations how to get it running?

Christoffer Hamberg

users mailing list