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.
We now have the ability to generate and join a persistent universe. You can create one in two ways:
(a) issue the "openmpi" command. This will fork/exec a seed daemon on your local host. You can specify a universe name or else it will just use the default.
(b) issue the "ompid -seed" command. Starts the seed up directly. Takes all the same options as openmpi.
I will be adjusting mpirun2 and mpi_init to allow connection to existing persistent universes, but they don't do it right now. The ompiconsole program simply issues an exit command to the persistent universe, so you can use it to shut the universe down if you like (or a kill -9 - works too).
This commit was SVN r2629.
really want to fire up the modules early just to get the unique id and it
will cause all kinds of fun along the way that we don't want.
Update the pcm components to match (keeping in mind none of them can
provide any extra info (although some day, I'm sure the ompid one
could do so)
Add a base function to access the unique id info.
This commit was SVN r2619.
Ensure that OMPI_F77_* are always defined, even if a) a f77 compiler
is not found, or b) the user disables the f77 MPI bindings.
This commit was SVN r2618.
Also removed the mpirun3 directory since we are basically dragging mpirun2 along with us - no need to create a new version after all.
Made a few changes to the universe info structure, eliminating the "webserver" and "socket" fields since we will do those contacts through the oob channel. Also changed the "silent_mode" field to "console" since silent mode is the default - the flag needs to tell you to turn the console on, not off.
Parse environ function now gets the ns and gpr replica contact info and loads it in the proper places to hand it off to the respective components, thus allowing me to check connection to them as part of determining if the named universe already exists. Changed the local_universe_exists function accordingly and gave it a new name (since the replicas may not be local). This name will shortly be changed to "ompi_rte_join_universe" as I complete the logic for doing that function.
Please let me know if you see any problems. I successfully ran some trivial multi-process functions in both mpirun2 and singleton modes, and ran the seed daemon as well, so I think it should all be okay.
This commit was SVN r2611.
Succeeded in contacting an existing persistent universe, and connecting!!! Thanks to Tim for the "ping" function.
First cut at a console - all it does right now is tell the universe to "die", but at least comm is being established.
This commit was SVN r2607.
- move the list management code into one set of functions that can be
locked / unlocked as needed
- clean up some stupidity in code
This commit was SVN r2594.
such, so no reason not to turn it on.
* Add some more comments to the pcm interface about recent changes to
the interface
* Add some comments to the RMS PCM and move the global list destruct
from finalize to close, since finalize may be called many times.
This commit was SVN r2593.
at the same time and multiple modules of the same component to be loaded
at the same time (but not launching procs in the same job).
- add a "this" pointer to all the PCM functions
- make base select() function return a list of selected pcms, based on
given criteria bitmask
- update all the pcms to match
* Add a insert before position function to the ompi_list code
This commit was SVN r2590.