Jeff Squyres a écrit :
On Sep 17, 2010, at 6:36 AM, Pascal Deveze wrote:
In charge of ticket 1888 (see at
https://svn.open-mpi.org/trac/ompi/ticket/1888) ,
I have put the resulting code in bitbucket at:
http://bitbucket.org/devezep/new-romio-for-openmpi/
Sweet!
The work in this repo consisted in refreshing ROMIO to a newer
version: the one from the very last MPICH2 release (mpich2-1.3b1).
Great! I saw there was another MPICH2 release, and I saw a ROMIO patch or
three go by on the MPICH list recently. Do you expect there to be major
differences between what you have and those changes?
I also see this new release (mpich2-1.3rc1). I am going to report the
modifications and inform the list.
I don't have any parallel filesystems to test with, but if someone else in the
community could confirm/verify at least one or two of the parallel filesystems
supported in ROMIO, I think we should bring this stuff into the trunk soon.
Testing:
1. runs fine except one minor error (see the explanation below) on various FS.
2. runs fine with Lustre, but:
. had to add a small patch in romio/adio/ad_lustre_open.c
Did this patch get pushed upstream?
This patch has been integrated yesterday in mpich2-1.3rc1 with another
patch in romio/adio/common/lock.c. They will be available very soon in
bitbucket.
======== The minor error ===================
The test error.c fails because OpenMPI does not handle correctly the
"two level" error functions of ROMIO:
error_code = MPIO_Err_create_code(MPI_SUCCESS, MPIR_ERR_RECOVERABLE,
myname, __LINE__, MPI_ERR_ARG,
"**iobaddisp", 0);
OpenMPI limits its view to MPI_ERR_ARG, but the real error is "**iobaddisp".
Do you mean that we should be returning an error string "**iobaddisp" instead of
"MPI_ERR_ARG"?
In MPICH2, they have a file mpi/errhan/errnames.txt that will generate
mpi/errhan/errnames.h making the links between codes
like "**iobaddisp" and the corresponding error string "Invalid
displacement argument".
The error.c program tests the presence of "displacement" in the error
string.
With OpenMPI ,the error message is:
" MPI_ERR_ARG: invalid argument of some other kind"
With MPICH2 , the error message is :
"Invalid argument, error stack:
MPI_FILE_SET_VIEW(60): Invalid displacement argument"
It would be better if OpenMPI displays at least the "Invalid
displacement argument" message.
This is not a new problem in OpenMPI, it was also the case in the trunk.