configure so that we can be smarter about selection logic (note: we are
not yet smarter about selection logic - coming soon). To keep things
sane, moved a bunch of files into rms/src/ from rms/.
* Since we were already forcing an autogen, move all the files from
rsh/src/ to rsh/ for the rsh pcm component. Makes things a bit quicker
on the compile, with no real downside
NOTE: You will have to run autogen / configure after this update.
This commit was SVN r2683.
connection management, the first *REAL* infiniband send has
to be triggered from the progress engine. Taking care of this
case with this code.
This commit was SVN r2674.
such as MPI_DUP_FN: MPI says that they have to be available via that
name in both C and Fortran. However, for implementation reasons, we
have to have them as separate functions. But if a Fortran compiler's
naming convention is ALL_CAPS, this is not possible. Hence, we need
to put in #define's in mpi.h to change the C names something like
this: MPI_DUP_FN -> OMPI_C_MPI_DUP_FN. This was actually done a long
time ago.
However, the source code where those C functions actually live
(src/mpi/c/attr_fn.c) still reflected the old names (e.g.,
MPI_DUP_FN). This is fine, actually -- mpi.h would come in and
#define them to their real names (OMPI_C_MPI_DUP_FN). So it was
functionally correct, but confusing at hell (and it just bit Edgar and
me today). So I'm changing src/mpi/c/attr_fn.c to use the real names
(OMPI_C_MPI_DUP_FN) so that tools like ctags and grep can find them in
the source code when you go looking. Plus, the code is just more
clear that way. I also put in massive comments about this in
src/mpi/c/attr_fn.c and src/mpi/f77/attr_fn_f.c so that we remember
why the heck we did this. :-)
This commit was SVN r2670.
- stop mca_oob_parse_contact_info from trashing the input string
- get gpr_proxy to reissue the non-blocking receive for notify messages
- add a diagnostic message to the gpr_proxy
This commit was SVN r2669.
- The official OSX workaround for ROMIO is to configure it with the
-arch=freebsd switch (that's what MPICH does!). This switch no
longer works because I updated their configure script to a modern
version of Autoconf, so I put a[nother] test in ROMIO's configure to
detect this situation and do the workaround.
- Realize that I forgot that ROMIO uses the MPI profiling layer, so if
the profiling layer is not enabled, ROMIO will fail to link in
dynamic environments (or otherwise Not Work). So put a thingy in
its configure script testing to see if the MPI profiling layer is
enabled or not. If it's not enabled, don't build ROMIO.
- Make the lack of any available io components *NOT* be an error
during MPI_INIT (e.g., what if you didn't enable profiling, but you
don't use any MPI_FILE* functions in your program? This is quite a
common case). If no io components are available, then an
MPI exception will be thrown during MPI_FILE_OPEN and
MPI_FILE_DELETE (which, unfortunately, according to the standard
uses the default handler on MPI_FILE_NULL, which, unfortunately
again, is MPI_ERRORS_RETURN). So users really have to check for
this situation. :-\
This commit was SVN r2661.
Fixed ompid so it reissues the non-blocking receive - should now be close to ready for primetime. Fixed some logic in the svc framework that wasn't checking properly for action flags.
This commit was SVN r2660.
includes the romio component. Only blocking operations are supported
-- non-blocking stuff is pending some changes in the top-level
progression engine, and some threaded issues need to be worked out.
This commit was SVN r2655.
After spending hours tracking this down, I finally did manage to isolate it to the dirname function. I have installed a "fix" for the problem (using an intermediate temporary copy of the string being passed to the function) that solves the problem without messing us up on the Mac.
Hopefully, we won't find too many more such "cute" errors!
This commit was SVN r2643.
to the docs in src/utl/output.h from the last commit, might as well do
this one. No real rush to update to this, but you'll need to
re-autogen.sh, etc.
Fixes an old, small bug that caused the static-components.h files to
always be regenerated, even if they didn't change. This caused
several files to be unnecessarily recompiled if you ran the following:
./configure
make
./configure
make
Granted, this is a small error, but a) we have it Right in other
places, b) AC does the Right things for AC_CONFIG_HEADER, so we should
do the Right things too.
This commit was SVN r2638.
IMPORTANT NOTE: when sendout ompi_output() strings to files, note that
the file goes into the session directory. If the session directory
does not exist yet when you call ompi_output() and you are sending the
string to a file, THE STRING WILL BE DROPPED (in terms of the file --
it will still be sent to all other locations that were specified).
This should really only be a factor for a fairly small portion of
things during initialization of a process -- basically, until the
session directory exists, nothing will be written to a file.
ompi_output() will automatically take care of creating the file and
writing to it once the session directory has been created. So it is
valid to:
id = ompi_output(...something with file set...)
ompi_output(id, "blah!");
/* ... process session directory is created ... */
ompi_output(id, "wazzlebort!");
In this case, the output file will be:
-----
[WARNING: 1 lines lost because the Open MPI process session directory did
not exist when ompi_output() was invoked]
wazzlebort!
-----
This commit was SVN r2637.
ompi_pointer_array_get_item() function instead of accessing the array
directly. This is because accessing the array directly in
multi-threaded situations is unsafe (someone else may be writing to
the array, the array may get moved out from under you via realloc(),
etc.).
This commit was SVN r2634.
Folks - there appears to be something unreliable about communication with the daemon at the moment. We are trying to track it down. Meantime, please be patient if experimenting with it.
This commit was SVN r2633.