I'm lost - where were you making a change?  I'm unaware of Minloc.java or Maxloc.java files in the MPI bindings, so I assume the change was being made to the Intracomm.java file?

On Nov 11, 2013, at 12:35 PM, Saliya Ekanayake <esaliya@gmail.com> wrote:


I've been using nightly tarball openmpi-1.9a1r28919 with Java binding and it had a bug in its MINLOC implementation (Minloc.java). Essentially, the following line,

out_array [outdisp + 1] = in_array [outdisp + 1] ;

should be changed to 

out_array [outdisp + 1] = in_array [indisp + 1] ;

The same should be done for MAXLOC (Maxloc.java) implementation as well. I tested with the change and both MINLOC and MAXLOC worked as expected afterwards. 

However, these files are no longer available in the latest trunk and it seems the API for collective operations have changed as well. Still MINLOC (and MAXLOC) does not work as expected. I've attached a sample code to reproduce the issue and an output from it (for MINLOC). 

I am running on 64bit Ubuntu 12.04.

Any suggestions?

Thank you in advance,

devel mailing list