Hi > >> I think the real shortcoming is that there is no Datatype.Resized > >> function. That can be fixed. > > > > Are you sure? That would at least solve one problem. > > > Here's a first cut at a patch. > > I don't know if this is fully correct; I don't quite understand > yet how baseSize is used in the .java files, but it seems > incorrect to me.
I manually applied your patch to openmpi-1.9a1r27668, because "patch -i resized.patch" couldn't find ompi/mpi/java/c/mpijava.exp (it seems that this file isn't available in any tar ball). Furthermore I modified your version of ColumnScatterMain.java. tyr Squyres 121 diff ColumnScatterMain.java* 11c11 < Datatype tmp_column_t, column_t; --- > Datatype column_t; 31,32c31 < tmp_column_t = Datatype.Vector (P, 1, Q, MPI.DOUBLE); < column_t = Datatype.Resized (tmp_column_t, 0, 8); --- > column_t = Datatype.Vector (P, 1, Q, MPI.DOUBLE); 34d32 < tmp_column_t.finalize (); Now I got the correct column values. Do you know how I can get the size of MPI.DOUBLE or a different datatype (Java doesn't support "sizeof" as far as I know)? I will rewrite my programs with 2D arrays so that they only use 1D arrays if Open MPI cannot provide a solution for Datatype.Vector which supports Java 2D arrays. Thank you very much for your help. Kind regards Siegmar