1
1
Граф коммитов

572 Коммитов

Автор SHA1 Сообщение Дата
George Bosilca
505d830b3f I miss the requirement for the mca_base_component_repository.h header.
This commit was SVN r8465.
2005-12-12 21:10:30 +00:00
George Bosilca
7d8d516a4a A bunch of fixed for Windows support.
- protection with __WINDOWS__ and not WIN32 or _WIN32
 - protect all the headers

This commit was SVN r8463.
2005-12-12 20:04:00 +00:00
George Bosilca
32cecc5798 Change ERROR to subscribe_error because ERROR is predefined on Windows. I didn't spend
to much time tracking that down, I just know that cl.exe will replace it with the 
"constant" string ...

This commit was SVN r8449.
2005-12-11 06:23:07 +00:00
Jeff Squyres
31336e4773 Add some missing headers / correct one installation directory
This commit was SVN r8408.
2005-12-08 04:00:52 +00:00
Jeff Squyres
6fbd321442 Fix a bunch of install locations for header files
This commit was SVN r8406.
2005-12-08 00:54:44 +00:00
Jeff Squyres
e781f55d16 Add proper prefixes into the #include statements
This commit was SVN r8404.
2005-12-08 00:05:26 +00:00
Jeff Squyres
3f27e61de6 Fix location of installed header files
This commit was SVN r8403.
2005-12-08 00:04:19 +00:00
Jeff Squyres
bd0b5acf0b Oops -- there's a second instance of OCRNL that needed to be
protected.

This commit was SVN r8374.
2005-12-02 18:24:59 +00:00
Jeff Squyres
0c9420e204 OS X 10.3 does not have OCRNL #define'd, so we need to protect its
usage 

This commit was SVN r8371.
2005-12-02 16:57:37 +00:00
Brian Barrett
bc4d3d6fff IRIX compile fixes:
- Need to make sure that SIZE_MAX exists as a constant if stdint.h
    doesn't exist
  - struct timeval is defined in unistd.h on IRIX, so need to include
    that headerfile where ever struct timeval is used.

This commit was SVN r8361.
2005-12-01 18:28:20 +00:00
Tim Woodall
20e6f41fe2 allow node number as hostname for bproc
This commit was SVN r8357.
2005-12-01 17:44:08 +00:00
Brian Barrett
389e378054 * use opal_init / opal_finalize in orteprobe so that ordering doesn't get out of
sync with opal....

This commit was SVN r8341.
2005-11-30 21:40:11 +00:00
Brian Barrett
79bf8843d2 * update memory hooks interface to allow for callbacks on both allocations
and dealllocations, per request from Galen and Tim

This commit was SVN r8303.
2005-11-29 04:46:14 +00:00
Tim Woodall
cf53d3e48f missing include
This commit was SVN r8295.
2005-11-28 23:13:36 +00:00
Galen Shipman
6e64e8a144 bproc fixes, these exist in the release 1.0 branch.
This commit was SVN r8292.
2005-11-28 21:10:02 +00:00
Tim Woodall
943e6f0cd5 corrections for stdin
- when eof is reached at orterun, send a 0 byte message to peer indicating eof
- on receipt of zero byte message - close corresponding file descriptor associated with the endpoint
- require setup ptys for stdin and stdout so that stdin can be closed independently of stdout

This commit was SVN r8264.
2005-11-28 14:58:53 +00:00
Tim Woodall
eb7cfe3ecd implement unsubscribe
This commit was SVN r8214.
2005-11-21 19:46:47 +00:00
Jeff Squyres
443d833ee9 fx2 is the serial debugger; fxp is the parallel debugger.
This commit was SVN r8211.
2005-11-21 17:00:36 +00:00
Brian Barrett
fee6409708 fix compiler warning and compiler error in totalview code...
This commit was SVN r8207.
2005-11-20 18:41:45 +00:00
Jeff Squyres
8d96c21311 Good weekend brainless activity -- implement the orterun command line
debugger scheme described in
http://www.open-mpi.org/community/lists/users/2005/10/0214.php.  This
makes our user-level debugger scheme much more vendor-independent
(although the "-tv" option will still work for backwards compatibility
-- it'll just be a synonum of "--debug").

This commit was SVN r8206.
2005-11-20 16:06:53 +00:00
Brian Barrett
20cea60b82 * fix "make distclean" error in PML
* turns out (duh!) that there was a reason that the <projectdir>dir
  variable was set in the AM conditional.  If not, stupid directories
  are created and not needed...  duh.

This commit was SVN r8205.
2005-11-20 07:41:09 +00:00
Brian Barrett
8faa1884f0 * The last of the build system optimizations. Combine the component and
component/base Makefile.am files, reducing the time configure spends
  stamping out Makefiles at the end
* Install base_impl.h file when devel-headers are being installed

This commit was SVN r8200.
2005-11-20 01:03:01 +00:00
Tim Woodall
d579e048f7 reset node name to be node number only to match
value set by allocation/mapper

This commit was SVN r8186.
2005-11-17 22:02:28 +00:00
Jeff Squyres
23ca7e1311 Ensure to return a value.
This commit was SVN r8182.
2005-11-17 14:31:42 +00:00
Brian Barrett
3e3ba49cdb should have removed the line of code, rather than #if 0'ing it out
This commit was SVN r8172.
2005-11-17 05:22:19 +00:00
Brian Barrett
f464bbbcc0 fix a couple of double-lock issues in the iof code that have crept in recently.
This should go to the v1.0 branch.

This commit was SVN r8171.
2005-11-17 01:26:00 +00:00
Tim Woodall
142b7cc682 merge from release branch
This commit was SVN r8167.
2005-11-16 17:10:49 +00:00
Tim Woodall
59d8c791d9 return fragments to free list
This commit was SVN r8121.
2005-11-11 17:48:56 +00:00
George Bosilca
c802d54696 The return type is an int. Casting it to a size_t before checking if it's bigger than zero lead to a true condition ... always ...
This commit was SVN r8114.
2005-11-11 06:34:14 +00:00
Brian Barrett
878676218e Rename opal/memory to opal/memoryhooks because XLC++ on Mac OS X is broken.
When compiling C++ code that includes something that looks for the C++
header file "memory" (stupid C++ headers not having .h extensions), it
goes through the header file search path, which includes $(topsrcdir)/opal,
so it finds the directory $(topsrcdir)/opal/memory/ and tries to load
that as the memory header file and all goes downhill.

This commit was SVN r8111.
2005-11-11 00:26:27 +00:00
Josh Hursey
5fa34df9ce Fix for orted / MPI_Abort problem reported from testers. They were seeing orteds
spining in orte_iof_base_flush() when running 
  intel_tests/src/MPI_Errhandler_fatal_c

When we close an endpoint by taking it out of the envent handler, we need to make
sure that it fits the criteria to pass through orte_iof_base_flush(), specificly
make sure we clean out the ep_frags list.
Note: This is more of a sanity check, since the endpoint should already be
      in this state at the point of closure.

Secondly in orte_iof_base_endpoint_read_handler(), if we determine that it is 
necessary to close the endpoint we have to "return" after doing so, otherwise
we add another frag to the endpoint which will cause it to hang in 
orte_iof_base_flush().

Bug go squish!

This commit was SVN r8109.
2005-11-11 00:09:07 +00:00
Tim Woodall
7f20198d49 Filter the set of data returned to the daemons during
startup using the new get_conditional command to improve
scalability during launch

This commit was SVN r8097.
2005-11-10 16:44:51 +00:00
Tim Woodall
d62ea1835d correct typo
This commit was SVN r8090.
2005-11-10 15:29:52 +00:00
Brian Barrett
86e2adc43a * it appears that including event.h without calling opal_init annoys XLC on
OS X (you get an undefined symbol opal_event_lock).  Since the code is
  all #if 0'ed out, #if 0 out the header for now as well.

  I believe console and openmpi are to be removed from OMPI before 1.0
  release, so this doesn't need to go to the 1.0 branch

This commit was SVN r8089.
2005-11-10 15:24:57 +00:00
Tim Woodall
3556757726 init callback from proxy
This commit was SVN r8085.
2005-11-10 05:27:11 +00:00
Tim Woodall
0b0d7f56c1 added support for callback on receipt of I/O
This commit was SVN r8084.
2005-11-10 04:49:51 +00:00
Tim Woodall
3699c924bd callback for init prior to launch - allow app to hookup stdout/stderr
prior to launch

This commit was SVN r8083.
2005-11-10 04:47:41 +00:00
Jeff Squyres
42ec26e640 Update the copyright notices for IU and UTK.
This commit was SVN r7999.
2005-11-05 19:57:48 +00:00
Josh Hursey
e7d5ecf016 Comment out the C/N notation parsing. Interior comment has more details.
This commit was SVN r7980.
2005-11-03 18:15:47 +00:00
Jeff Squyres
1b691f8089 Pull NULL checks around releasing of resources to ensure we don't
segv.

This commit was SVN r7971.
2005-11-03 11:27:19 +00:00
Jeff Squyres
653f43cc2b Update to latest prototype
This commit was SVN r7970.
2005-11-03 11:23:23 +00:00
Jeff Squyres
60b0330bc1 Initialize "conditions" to ensure we don't segv
This commit was SVN r7961.
2005-11-01 17:13:18 +00:00
Ralph Castain
399e41d113 Fix a potential memory leak...
This commit was SVN r7960.
2005-11-01 15:17:11 +00:00
Jeff Squyres
0379b27969 Add missing DESTRUCT
This commit was SVN r7948.
2005-11-01 13:35:44 +00:00
Jeff Squyres
a2e507c629 Fix potential segv through uninitialized variable
This commit was SVN r7946.
2005-11-01 13:09:00 +00:00
Tim Woodall
e27dfb180d yet another fix
This commit was SVN r7941.
2005-10-31 21:59:14 +00:00
Tim Woodall
aa5b61e4f1 corrections for multiple app contexts
This commit was SVN r7939.
2005-10-31 20:37:44 +00:00
Tim Woodall
cf5c27c1e3 start all of the sends in parallel (from the same buffer) - wait for
all to complete

This commit was SVN r7935.
2005-10-31 16:21:51 +00:00
Tim Woodall
a891db81e9 set socket options to improve oob performance
This commit was SVN r7934.
2005-10-31 16:21:11 +00:00
Jeff Squyres
8503fce61b Remove debugging message
This commit was SVN r7924.
2005-10-28 18:53:20 +00:00
Jeff Squyres
ce78b76598 Quick fix from Ralph -- this escape committing last night.
This commit was SVN r7917.
2005-10-28 14:03:26 +00:00
Ralph Castain
afeeacd76d Complete hookup of the registry proxy for the get_conditional command.
This commit was SVN r7915.
2005-10-28 05:35:07 +00:00
Ralph Castain
ad9de4ca3b Restore the pointer arrays to the registry dictionaries. Revise the system so that the itag is equivalent to the index into the pointer array. It already was, but it wasn't obvious before (several functions relied upon it, but others "hid" the relationship) - now, make it explicitly clear. Set things up so lookups occur at max speed by just indexing into the dictionary array.
This commit was SVN r7912.
2005-10-28 04:56:06 +00:00
Ralph Castain
eebda71a0b Add a new API to the registry for conditional data retrievals. The new API allows you to retrieve data from registry containers that have key-value pairs where the value matches the specified one. The requested keys are then retrived from that container.
This commit was SVN r7907.
2005-10-28 00:30:58 +00:00
Tim Woodall
3fd351117a removed debug
This commit was SVN r7902.
2005-10-27 21:07:49 +00:00
Tim Woodall
793836da57 removed debug
This commit was SVN r7897.
2005-10-27 17:10:49 +00:00
Tim Woodall
7300112564 removed debug
This commit was SVN r7896.
2005-10-27 17:08:30 +00:00
Tim Woodall
60754acae8 - modified rmaps data structures to point directly to ras node
- modified rsh to NOT query for each nodes mapping, as all data is
  already available in the rmaps structures

This commit was SVN r7894.
2005-10-27 17:04:10 +00:00
Tim Woodall
c0124fecdd changed segment dictionary to hash table to improve
search time for reverse lookup

This commit was SVN r7893.
2005-10-27 17:00:47 +00:00
Tim Woodall
b60bea9ada dont allow callbacks to processed recursively - appear to be blowing away the stack
This commit was SVN r7862.
2005-10-25 13:48:08 +00:00
Tim Woodall
4eca6e22bd use persistent non-blocking receives
This commit was SVN r7861.
2005-10-25 13:38:13 +00:00
Andrew Friedley
f92185c43b Complete George's fix - this is a problem I caused :(
This takes care of Troy's first segfault problem, and compile errors that will likely happen as soon as Ken applies George's patch and runs make again.

This commit was SVN r7833.
2005-10-21 21:06:20 +00:00
Tim Woodall
88c7fd9f8d add support for a "persistent" non-blocking receive
doesn't require a re-registration on every receive

This commit was SVN r7822.
2005-10-20 22:06:11 +00:00
Tim Woodall
cea599a274 back out prior change - investigate an alternate approach
This commit was SVN r7821.
2005-10-20 17:49:13 +00:00
Tim Woodall
56983d3e7f Don't invoke non-blocking recv callbacks when recv is posted. Otherwise,
this can result in recursive callbacks and extremely long call chains

This commit was SVN r7817.
2005-10-20 15:07:06 +00:00
Tim Woodall
d0cd752e33 - don't track the sequence number when the endpoint is a data sink,
its not needed and there could be multiple sources each w/ their 
  own sequence.
- if a write doesn't complete, need to check for non-blocking case.. 

This commit was SVN r7795.
2005-10-18 14:26:12 +00:00
Jeff Squyres
89931ac05f - Correct typo in comment
- Add DIST_SUBDIRS to ompi/tools/Makefile.am

This commit was SVN r7780.
2005-10-17 11:55:55 +00:00
Brian Barrett
1302cb4072 The next in a long line of crazed build system changes from Brian. This was
originally suggested by Ralf Wildenhues, to try to speed autogen, configure,
and make (and possibly even make install).  Use automake's include directive
to drastically reduce the number of Makefile files (although the number of
Makefile.am files is the same - most are just included in a top-level
Makefile.am).  Also use an Automake SUBDIRs feature to eliminate the
dynamic-mca tree, which was no longer really needed.  This makes adding
a framework easier (since you don't have to remember the dynamic-mca
tree) and makes building faster (as make doesn't have to recurse through
the dynamic-mca tree)

This commit was SVN r7777.
2005-10-17 00:21:10 +00:00
Jeff Squyres
9a25554559 Patch from Brooks Davis for some BSD compatibility issues.
This commit was SVN r7751.
2005-10-13 15:41:25 +00:00
Thara Angskun
8b59de0f37 Import RAS for POE
This commit was SVN r7748.
2005-10-13 14:08:17 +00:00
Thara Angskun
73fff4ea2c - change from mca_base_param_register_* to mca_base_param_reg_*
- update include files / fix minor bugs

This commit was SVN r7746.
2005-10-13 12:58:31 +00:00
Josh Hursey
92429dc90f Fix for a problem Edgar and Jeff identified WRT PLS determining if we are
oversubscribed on a node. And thus whether to call sched_yield or not.

The value of node->node_slots_inuse does not currently represent the number of
slots actually in use, at the moment. This is actually a bug in the RAS/RMAPS
base components, but the fix for that specific bug is bigger than we want to 
address at the moment (but will certianly do so in the near future).

Since we cannot trust this value, use the total number of mapped processes
(which was properly set by the RMAPS component upon mapping -- Just not 
properly propagated back to the registry's node segment) from the process 
mapping.

In addition to this change I cleaned up a couple of the debug messages. It
seems that TM and RSH are the only two directly effected by this. SLURM
would be if that section of code wasn't currently inactive, but put the fix
in for prosparity.

This commit was SVN r7743.
2005-10-13 03:26:48 +00:00
Josh Hursey
0f08e87a1f Fixed a max_slots off by one problem that Brian highlighted.
Also cleaned up the error message when allocating over the number of
slots available.

This commit was SVN r7715.
2005-10-12 02:09:56 +00:00
Ralph Castain
70779fa2ab Cleanup some old logic - nothing major.
This commit was SVN r7712.
2005-10-12 01:12:27 +00:00
Brian Barrett
128389758f * fix compile error in XGrid PLS that got introduced sometime in the not
too distant past
* work around apparently broken handling of max_slots somewhere along
  the line by just setting it to 0

Both changes should go to the trunk.

This commit was SVN r7710.
2005-10-12 00:41:14 +00:00
Josh Hursey
af9ccdf04a need to use get_first instead of get_begin since we don't want to execute
this loop if "nodes" is an empty list. get_first, in this loop context, 
allows us to do just that, while get_begin doesn't.

This fixes a --host problem that appeared on the Linux PPC64 build.

This commit was SVN r7703.
2005-10-11 21:33:04 +00:00
Josh Hursey
8ba2900341 fixed a typo, added comments for future work
This commit was SVN r7700.
2005-10-11 20:59:31 +00:00
Ralph Castain
e1244fc160 Fix a few thread-lock things discovered by Josh. The thread locks in the registry's local notify delivery system had not been updated to reflect the design change whereby the xcast uses the notify delivery system. This has now been fixed.
Also revised the callbacks to store and utilize local variables to avoid problems where threads modify the global structures. Not sure this totally fixes the problem, but it's a shot - suggested by Josh (and Jeff, I believe).

This commit was SVN r7694.
2005-10-11 19:35:04 +00:00
Ralph Castain
a47655b3fd Add unlock/lock around the delivery of a local callback to remove thread-lock condition if the callback function attempts to re-enter the registry.
This commit was SVN r7678.
2005-10-10 02:45:50 +00:00
Ralph Castain
6c839048cf Fix a typo that caused valgrind to bark on 64-bit machines. Actually was a potential source of error, so the barking was legit.
This commit was SVN r7677.
2005-10-10 02:34:26 +00:00
Josh Hursey
d5ebb5c46a fix a compiler warning
This commit was SVN r7674.
2005-10-08 17:03:12 +00:00
Jeff Squyres
0629cdc2d7 Bring back the changes from /tmp/jjhursey-rmaps. Specific merge
command:

svn merge -r 7567:7663 https://svn.open-mpi.org/svn/ompi/tmp/jjhursey-rmaps .

(where "." is a trunk checkout)

The logs from this branch are much more descriptive than I will put
here (including a *really* long description from last night).  Here's
the short version:

- fixed some broken implementations in ras and rmaps
- "orterun --host ..." now works and has clearly defined semantics
  (this was the impetus for the branch and all these fixes -- LANL had
  a requirement for --host to work for 1.0)
- there is still a little bit of cleanup left to do post-1.0 (we got
  correct functionality for 1.0 -- we did not fix bad implementations
  that still "work")
  - rds/hostfile and ras/hostfile handshaking
  - singleton node segment assignments in stage1
  - remove the default hostfile (no need for it anymore with the
    localhost ras component)
  - clean up pls components to avoid duplicate ras mapping queries
  - [possible] -bynode/-byslot being specific to a single app context 

This commit was SVN r7664.
2005-10-07 22:24:52 +00:00
Tim Woodall
3c900a7aa2 - fix a deadlock on threaded build
- update sequence number after a partial write completes

This commit was SVN r7654.
2005-10-06 21:50:58 +00:00
Tim Woodall
a79e07390a remove debug
This commit was SVN r7653.
2005-10-06 21:29:47 +00:00
Tim Woodall
2ea71064ad close all file descriptors w/ the exception of stdin/stdout/stderr
otherwise, parent's file descriptors are inherited and held open by
the child even if the parent dies

This commit was SVN r7652.
2005-10-06 21:22:36 +00:00
Tim Woodall
797922fbab - cleanup on loss of connection to peer
- generate ack if no one to forward msg to

This commit was SVN r7651.
2005-10-06 21:21:26 +00:00
Tim Woodall
3280f6e655 add facility to receive callback on disconnection from peer
This commit was SVN r7650.
2005-10-06 19:39:20 +00:00
Andrew Friedley
37123ed430 Implement an opal_show_help() (like is done in ompi_mpi_init) for error handling in opal_init and both stages of orte_init.
Some of the functions in opal_init are void or return a bool (opal_output_init, but always returns true.. eh?), so I don't check them.

This commit was SVN r7638.
2005-10-05 13:56:35 +00:00
Jeff Squyres
65f1adfedc Add "-tv" option to orterun:
orterun -tv -np 4 foo

which will turn around and re-exec:

      totalview orterun -a -np 4 foo

This commit was SVN r7636.
2005-10-05 10:24:34 +00:00
Jeff Squyres
65698bc6be Remove compiler warning
This commit was SVN r7635.
2005-10-05 10:23:02 +00:00
Jeff Squyres
0f100d8577 - Don't overwrite rc with the return value from pls_tm_disconnect --
it's always ORTE_SUCCESS and sometimes masks real !=ORTE_SUCCESS rc
  values. 
- Add MCA param pls_tm_want_path_check.  If nonzero (the default),
  check for the orted in the PATH before each tm_spawn()'ing (doing a
  little caching so that we don't hammer on the filesystem -- remember
  all the PATH's where we successfully found the orted so that we
  don't have to query the filesystem multiple times for a PATH where
  we previously found the orted)
- Be sure to opal_argv_split() the pls_tm_orted MCA param

This commit was SVN r7625.
2005-10-04 19:38:51 +00:00
Jeff Squyres
b79c46dbf6 Downgrade the default priority to 75, just to give leeway (same as the
slurm pls).

This commit was SVN r7624.
2005-10-04 19:18:52 +00:00
Jeff Squyres
eb24fe4fd8 If the job fails to launch properly, set its state to ABORTED, which
will fire some subscriptions that will eventually result in invoking
terminate_job (i.e., terminate anything that may have been
successfully started by launch).

This commit was SVN r7622.
2005-10-04 17:19:23 +00:00
Jeff Squyres
80399aff17 Add some README's to describe what these components are fore.
This commit was SVN r7618.
2005-10-04 15:14:23 +00:00
Jeff Squyres
3df0828921 Restore this PLS -- LANL needs this for some of its older clusters.
This commit was SVN r7617.
2005-10-04 15:09:38 +00:00
Jeff Squyres
7645a0fa23 This is the old bproc launcher that is ok to remove.
This commit was SVN r7583.
2005-10-02 14:58:52 +00:00
Jeff Squyres
a9f24c27bd Restore bproc -- this was *not* the old one (didn't read Tim Prins'
mail carefully -- doh!)

This commit was SVN r7582.
2005-10-02 14:57:44 +00:00
Jeff Squyres
d44fc0fa2a - Clarify the help file text a little
- Remove an extraneous \n in opal_output() output

This commit was SVN r7581.
2005-10-02 11:58:51 +00:00
Jeff Squyres
91ed790715 Add --prefix processing for the tm pls
This commit was SVN r7580.
2005-10-02 11:58:18 +00:00
Jeff Squyres
da1c096883 Remove old, outdated bproc launcher.
This commit was SVN r7579.
2005-10-02 10:45:00 +00:00
Josh Hursey
50e128ab83 Take out the --map command line arguemnt, since it is not handled properly
at the moment.

Also remove all references to --map, and (C, N) command line options in the 
help file. These references will be put back in when these options are 
implemented.

This commit was SVN r7574.
2005-10-01 15:51:20 +00:00
Jeff Squyres
0459678f82 Fixes to make the SLURM pls handle --prefix properly
This commit was SVN r7569.
2005-09-30 21:44:05 +00:00
Jeff Squyres
e9ec846c68 Minor change to only display the prefix debug message at most once
This commit was SVN r7568.
2005-09-30 21:43:32 +00:00
Jeff Squyres
d172088dd3 Leave it up to users to do something that we hadn't planned on. :-)
If you use --prefix and then "-x LD_LIBRARY_PATH", the rsh pls would
take great pains to ensure that PATH and LD_LIBRARY_PATH were setup
correctly on the local and remote nodes, but then the fork pls would
blitely overwrite LD_LIBRARY_PATH with what the user exported (i.e.,
most likely without our prefix).  This patch takes care of that -- the
fork pls examines the incoming environment, and if it sees PATH or
LD_LIBRARY_PATH, it re-prefixes those variables.

This commit was SVN r7566.
2005-09-30 19:14:31 +00:00
Andrew Friedley
82ee2933a5 - Add an opal_show_help() to the pls fork module to explain what went wrong when the execv to start the application fails.
- Add a couple opal_show_help()'s to indicate when not enough slots/nodes are available to satisfy a request.

This commit was SVN r7555.
2005-09-30 14:30:21 +00:00
Jeff Squyres
fcef1774d5 Per advice from Ralf W., change the pkgdata declarations in
Makefile.am's to be a *slightly* more correct (and, more importantly,
less error-prone) construct.

This commit was SVN r7554.
2005-09-30 13:32:39 +00:00
Brian Barrett
e0c3775551 * remove some duplicate dependencies that were making Solaris mad
This commit was SVN r7549.
2005-09-30 04:13:26 +00:00
Josh Hursey
d39841174d Must release the lock before entering the non blocking recv, since
it is possible that if the receive has been arrived the callback will
be called before recv_buffer_nb() returns. This causes deadlock
as we try to acquire the lock, but already hold it.

This was causing orterun and orteds to stall in certian situations.
Became evident when stress testing dynamics with remote nodes.

This commit was SVN r7543.
2005-09-29 14:24:11 +00:00
Jeff Squyres
de1c8fb125 - Make debug output a bit more accurate and readable
- Fix bug identified by users: --prefix may also apply on the local
  node; we need to prefix the PATH and LD_LIBRARY_PATH environment
  variables before invoking execve()

This commit was SVN r7541.
2005-09-29 12:35:43 +00:00
Josh Hursey
c11ba09655 Remove the progress engine stuff from abort. This was causing
some orted's to stall on locks in the MPI Dynamics cases. Since it
is not essentual that we call these functions, they can so away.

Unlock the peer lock when aborting. This causes a potential deadlock
in do_waitall [see comment in code]. This was causing orteds to
deadlock at times when the seed had terminated. With proper interleaving
and timing the orted was deadlocking. This seems to have fixed this in 
my stress testing with MPI 2 Dynamics.

This commit was SVN r7539.
2005-09-29 05:04:43 +00:00
Josh Hursey
4cf4b4ea86 Fix for MPI 2 dynamics.
The NS replica should give out tags that are over ORTE_RML_TAG_DYNAMIC
or it will overlap with other outstanding tags. This overlap was killing
MPI_Comm_spawn when a program tried to use it multiple times (> 3).

With this fix MPI_Comm_spawn is behaving properly.
A program can call it many times in a row with out problem.

NOTE: Not tested for multi-threaded build yet

(A long time debugging for a one liner... :/)

This commit was SVN r7529.
2005-09-28 03:20:43 +00:00
Josh Hursey
a23370c007 Converted some MCA parameters from the old version to the new.
Have the ras_base_schedule_policy MCA parameter working once again. before it 
would only do slot based allocation, even if the MCA parameter was set properly.

Currently you can specify to orterun a node allocation by either:
-mca ras_base_schedule_policy node
-bynode

and slot allocation (which is the default) by:
-mca ras_base_schedule_policy slot
-byslot

This commit was SVN r7513.
2005-09-27 02:54:15 +00:00
Brian Barrett
50dc5499b4 * fix some remaining --with-btl-portals configure issues
This commit was SVN r7498.
2005-09-24 00:11:40 +00:00
Tim Woodall
c38ebe2c6a support -H,-host,--host option for rsh/ssh launch
This commit was SVN r7484.
2005-09-22 16:09:23 +00:00
Tim Woodall
4a813c1d38 support --host option (in addition to -host or -H)
This commit was SVN r7483.
2005-09-22 16:08:40 +00:00
Andrew Friedley
cfa09dc0e7 Fix two more missing escapes.
Sorry about breaking the tree with typos, I think this should fix all of them.

This commit was SVN r7482.
2005-09-22 16:04:46 +00:00
Tim Woodall
194150b81c someone broke this...
This commit was SVN r7478.
2005-09-22 13:47:37 +00:00
Andrew Friedley
555ae37255 Add lib{opal,orte,mpi}.la to appropriate LIBADD's, some whitespace cleanup as well.
This commit was SVN r7477.
2005-09-22 12:28:54 +00:00
Tim Woodall
84e0d89497 correction
This commit was SVN r7447.
2005-09-20 19:20:39 +00:00
Ralph Castain
2656ec93b5 Fix a typo so that stage_gate_2 gets correctly passed back to orterun...
This commit was SVN r7446.
2005-09-20 19:12:59 +00:00
Ralph Castain
5686e8119e Move the error name macro to the errmgr framework. Add a second level of tracing. Remove an obsolete file.
This commit was SVN r7445.
2005-09-20 17:09:11 +00:00
Tim Woodall
c25ffb343a restore host option
This commit was SVN r7443.
2005-09-20 13:36:16 +00:00
Tim Woodall
29d14281c8 use the specified host names (if provided)
This commit was SVN r7442.
2005-09-20 13:33:11 +00:00
Tim Woodall
6c885acb91 corrections to handle host specifications
This commit was SVN r7441.
2005-09-20 13:32:08 +00:00
Tim Woodall
f0cec8ac0c Both -H and -host options are allowed to specify hostlist (now supported for bproc -
will look at rsh)

This commit was SVN r7440.
2005-09-20 13:31:13 +00:00
Jeff Squyres
41ba191e9a Temporarily comment out the -arch and -host options since we do not
yet have an rmapper that can handle that information.

This commit was SVN r7438.
2005-09-20 08:56:02 +00:00
Tim Woodall
75d9119cf3 correction
This commit was SVN r7436.
2005-09-19 21:35:39 +00:00
Tim Woodall
e1ec160858 lookup available nodes based on mapping data (if available)
This commit was SVN r7435.
2005-09-19 21:31:00 +00:00
Tim Woodall
9c334800ad merge in environ from front-end node - giving precedence
to any user supplied values. otherwise, some c library
routines behave badly (getpwuid...)

This commit was SVN r7434.
2005-09-19 21:06:05 +00:00
Ralph Castain
bfef5928a1 Add a second trace option to pass an argument
This commit was SVN r7433.
2005-09-19 20:22:22 +00:00
Ralph Castain
86a43b1d29 Add trace to the daemons and orterun so we can tell when their callbacks are being exercised.
This commit was SVN r7432.
2005-09-19 17:20:01 +00:00
George Bosilca
60f9edf17c Create the mutex and the condition only once.
This commit was SVN r7430.
2005-09-19 16:01:29 +00:00
George Bosilca
193120d434 In the case where we we have to subscribe to get information about the peer. As we call this function
with the mutex locked and as this function will call oob_send which will call the lookup again
... we will deadlock as the mutex is already lock. The solution is to release the mutex before
going into the subscription. Then of course the logic to remote the item when something went
wrong with the subscrition is a little bit more complex.

This commit was SVN r7429.
2005-09-19 15:59:46 +00:00
George Bosilca
703e874468 Remove a race condition. If this functions is called by the progress thread then it does not have to
add an event, it can call the spawn function directly. This will avoid it standing on the condition who 
will never get released.

This commit was SVN r7428.
2005-09-19 15:54:53 +00:00
Ralph Castain
b589a93e29 Continue to lace the trace functionality into orte...
This commit was SVN r7427.
2005-09-19 15:29:14 +00:00
Tim Woodall
09869daf8e from the list of addresses exported by the peer, attempt to
pick an address on the same subnet. if non are found, give
up and try them in order

This commit was SVN r7426.
2005-09-19 14:47:11 +00:00
Jeff Squyres
f9a1e14f65 Per suggestion from our friendly Libtool developer friends, add proper
dependencies for liborte and libompi (i.e., make liborte depend on
libopal, and make libmpi depend on liborte)

This commit was SVN r7417.
2005-09-17 10:45:46 +00:00
Tim Woodall
f71abbf856 cleanup
This commit was SVN r7414.
2005-09-16 20:59:53 +00:00
Tim Woodall
41b6fc166e setup callback before actually launching - otherwise this is
a definate race condition

This commit was SVN r7413.
2005-09-16 20:45:25 +00:00
Josh Hursey
575afef072 Use non blocking sends in orte_gpr_replica_remote_notify.
This fixes one of the race conditions in orterun is sent a kill signal.
Before it would sometimes spin in the OOB waiting for a message to complete
to a peer that was no longer around. Stalling at this level prevented orterun
from noticing that it had received a kill signal.

This commit was SVN r7408.
2005-09-16 15:34:44 +00:00
Brian Barrett
2787d993a9 * Add checks for fork/execve/setpgid for slurm components so that they
automagically don't build on platforms without such things
* Fix for mistaken use of cache variable in assembly setup
* one more cached test hits the books

This commit was SVN r7404.
2005-09-16 04:51:09 +00:00
Brian Barrett
93e28ebe74 * hack up rml_cnos to work with last round of orte changes
* updates to the red storm configure setup
* fix missing header if no timer components are found

This commit was SVN r7402.
2005-09-16 02:25:41 +00:00
Jeff Squyres
f4e8fe4817 Arrgh -- stupid mistake on last commit -- accidentally replaced a
LIBADD instead of appending to the existing one.

Also removed some more Makefile.options whitespace, and I think emacs
removed some tabs (i.e., replaced them with whitespace).

This commit was SVN r7399.
2005-09-15 21:37:24 +00:00
Jeff Squyres
15d0a95202 - Remove extra whitespace from Makefile.am's from when we removed
Makefile.options
- Sample in each of the three projects of how to link againt the
  relevant libraries so that when components are loaded into a parent
  process' space, we don't rely on the libopal/liborte/libmpi symbols
  being in the parent's public symbol namespace -- instead,
  dynamically link to the relevant libraries, allowing the dynamic
  linker to pull those libraries in at run-time, if needed

This commit was SVN r7397.
2005-09-15 20:56:18 +00:00
Tim Woodall
5d6899258f correct typo
This commit was SVN r7396.
2005-09-15 20:54:40 +00:00
Tim Woodall
247e8044f2 don't include internal variables when building environment
This commit was SVN r7395.
2005-09-15 20:49:54 +00:00
Tim Woodall
e64f7cec70 remove warning regarding pty unless debug is enabled
This commit was SVN r7394.
2005-09-15 20:49:02 +00:00
Jeff Squyres
46bed32fc6 While double-checking the order of SUBDIRS (ensuring dynamic-mca is
after "."), remove some whitespace left over from when we removed
Makefile.options.

This commit was SVN r7393.
2005-09-15 20:46:29 +00:00
Josh Hursey
96c8bbaa75 pedantic comment cleanup
This commit was SVN r7388.
2005-09-15 17:18:35 +00:00
Josh Hursey
9d5af5f926 As Tim pointed out we don't want to call orte_finalize in orte_abort.
However we do want to do a bit of cleanup on the node before we exit,
specificly clean out the session directory. I also had a couple of the
subsystems that don't depend upon peers (which is key) clean up as well.

Pedantic formatting issue in oob_tcp.h

This commit was SVN r7387.
2005-09-15 17:13:13 +00:00
Tim Woodall
3a0bf0d37d Note that we CANNOT do the normal finalize in abort. We are aborting
due to some abnormal condition, that will likely cause finalize to
hang.

This commit was SVN r7381.
2005-09-15 14:06:03 +00:00
Josh Hursey
8bf587475b Added a flag to orte_rmgr_base_proc_stage_gate_subscribe() allowing the
caller to specify a subset of the state variables that it can can subscribe to.
This is specified with one of three special flags defined in rmgr/rmgr_types.h

This is useful when we only care about a subset of the state changes, such as
in orted which only needs to know when a job has terminated or aborted.

This commit was SVN r7356.
2005-09-13 21:14:34 +00:00
Tim Woodall
d9c5245269 change subscription to request pre-existing values
for jobids other than ourself - mpi2 dynamic(s)

This commit was SVN r7335.
2005-09-13 03:52:39 +00:00
Tim Woodall
d4ef08c074 Ralph - please review and revise if necessary.
Add support for PRE_EXISTING values on new subscription

This commit was SVN r7334.
2005-09-13 03:51:58 +00:00
Josh Hursey
8dfcc41efd Bootproxy daemons should persist after their local children have exited,
waiting instead for the SOH to indicate that the jobid has terminated.

In a scheduled environment, if your program has a section of MPI code
followed by a section of computation that some processes execute while
other proceses terminate normally. This patch keeps the scheduler from 
terminating all of the processes and the allocation if all of the processes 
on an allocated node exit well before other processes on other nodes.

This commit was SVN r7333.
2005-09-13 02:37:34 +00:00
Brian Barrett
88cd561198 * bunch of fixes for Red Storm - missing header files and the like
This commit was SVN r7325.
2005-09-12 21:45:58 +00:00
Josh Hursey
7d403cf1b4 whoops forgot a bit of debug. ;(
This commit was SVN r7313.
2005-09-12 16:58:10 +00:00
Josh Hursey
e1abd9a6e4 Added a couple of missing initalizations that caused orteprobe to
segv when in opal_finalize

This commit was SVN r7311.
2005-09-12 16:52:58 +00:00
George Bosilca
ca100f7c5d Finally ... the command was a uint16_t but was packed as an int8_t. That's always ZERO on a big endian
machine.

Anyway, strange enough the modification of this file trigger a recompiliation of nearly everything
in Open MPI !!!

This commit was SVN r7307.
2005-09-12 09:43:34 +00:00
George Bosilca
361ff6640f Correct the progress thread function name from opal_progress_thread to opal_event_progress_thread.
This commit was SVN r7300.
2005-09-11 20:04:40 +00:00
Jeff Squyres
a107ab3897 Add missing header file
This commit was SVN r7294.
2005-09-11 10:14:29 +00:00
Brian Barrett
1fcf18c211 non-persistent signal behavior isn't quite right, so use the proper SIGNAL
macros and deregister at the appropriate time.

This commit was SVN r7293.
2005-09-10 23:22:37 +00:00
Jeff Squyres
31ea80cd0b Simplify the poe configure.m4 -- if we're on AIX, always build it. If
we're not on AIX, don't build it.

This commit was SVN r7291.
2005-09-10 10:40:26 +00:00
Jeff Squyres
7e4c23d88c Add missing header file
This commit was SVN r7290.
2005-09-10 10:39:15 +00:00
Rainer Keller
3c639efa38 - Silly cleanup
This commit was SVN r7289.
2005-09-10 08:01:47 +00:00
Rainer Keller
5fed46e072 - Allow usernames to be specified in the hostfile.
The following formats are parsed:
    user@IPv4
    user@fqdn
    IPv4 or fqdn [username|user-name|user_name]=user
- Try a better error-detection when parsing (recognize wrong
  IPs, fqdns...)

This commit was SVN r7288.
2005-09-10 07:57:50 +00:00
Ralph Castain
76ccec0cee Upgrade the new opal trace system to utilize verbosity. Begin building the trace command into the ORTE system.
This commit was SVN r7267.
2005-09-09 18:27:17 +00:00
Jeff Squyres
0b255830e0 Slight change to the defaults -- make the prefix "output-pid<pid>-" so
that multiple processes don't overwrite each other.  Change that
default in orte_init_stage1() to just "output-" (because the file will
be in a process-unique directory at that point; the pid is no longer
necessary).

This commit was SVN r7256.
2005-09-09 12:37:39 +00:00
Jeff Squyres
7eadfc4bdc Add a new hook function into the opal_output system:
opal_output_set_output_file_info().  This allows getting and setting
the default directory where output stream files will be opened (for
all *new* streams).  Before this function is not invoked, the default
location is $TMPDIR or $HOME (if $TMPDIR is not defined).  

Added a call into orte_init_stage1() to call this function
immediately after the session directory is created and set the default
location of stream files to be the process' session directory.

This commit was SVN r7254.
2005-09-09 12:18:39 +00:00
Jeff Squyres
d19e5b4af8 Remove unused variable
This commit was SVN r7250.
2005-09-09 10:11:46 +00:00
Ralph Castain
7fbe575edd Make sure rc is initialized.
This commit was SVN r7233.
2005-09-08 13:20:38 +00:00
Thara Angskun
e3feddfdd4 Move from stone aged configure.stub to configure.m4
This commit was SVN r7231.
2005-09-08 09:49:21 +00:00
Ralph Castain
2c6e47e38c Add a trace utility that provides info on progress through functions. This is not enabled yet - need Jeff or Brian to add it to the configure/build system.
This commit was SVN r7222.
2005-09-07 18:52:28 +00:00
George Bosilca
f13690f16e The prototype of ompi_help has been changed.
This commit was SVN r7218.
2005-09-07 17:15:00 +00:00
Brian Barrett
ed56e743b7 * update configure.ac to use the modern version of AC_INIT and
AM_INIT_AUTOMAKE, instead of the deprecated version.
* Work around dumbness in modern AC_INIT that requires the version
  number to be set at autoconf time (instead of at configure time, as
  it was before).  Set the version number, minus the subversion r number,
  at autoconf time.  Override the internal variables to include the r
  number (if needed) at configure time.  Basically, the right thing
  should always happen.  The only place it might not is the version
  reported as part of configure --help will not have an r number.
* Since AM_INIT_AUTOMAKE taks a list of options, no need to specify
  them in all the Makefile.am files.
* Addes support for subdir-objects, meaning that object files are put
  in the directory containing source files, even if the Makefile.am is
  in another directory.  This should start making it feasible to
  reduce the number of Makefile.am files we have in the tree, which
  will greatly reduce the time to run autogen and configure.

This commit was SVN r7211.
2005-09-07 05:54:53 +00:00
Josh Hursey
a5e5924217 Added a custom arguments MCA param for Slurm PLS.
This allows the user to specify certain options to srun when an application
is launched with this PLS.

A useful example is the need to set the time to wait from when the first
process completes and when slurm kills remaining processes:

  pls_slurm_args=--wait=1200

This commit was SVN r7206.
2005-09-06 21:52:28 +00:00
Jeff Squyres
c5dc8762a2 Remove useless SUBDIRS line
This commit was SVN r7203.
2005-09-06 21:31:50 +00:00
Jeff Squyres
383d9f58e7 Be [slightly] more descriptive. :-)
This commit was SVN r7198.
2005-09-06 16:57:11 +00:00
Ralph Castain
47bf2574e1 Ensure that subscriptions for a specific requestor/subscription return id only get registered once. It appears that sometimes the system registers a subscription for the same return location multiple times. This prevents getting multiple callbacks when that happens. Still need to track down why it is happening at all.
This commit was SVN r7197.
2005-09-06 16:33:41 +00:00
Rainer Keller
a13d513bbe - Rename of unused define, sitting in tree.
This commit was SVN r7196.
2005-09-06 16:17:08 +00:00
Rainer Keller
a36347d728 - Support -prefix specification on mpirun/orterun cmd-line per
app_context:
  mpirun -np 2 -prefix /path/to/ompi/on/machineA ./exec1 : \
         -np 2 -prefix /path/to/ompi/on/machineB ./exec2

- Allow with -mca pls_rsh_assume_same_shell 0, the checking for the
  SHELL-variable on the actual node (currently 1st node).
  Sets the prefix, PATH and LD_LIBRARY_PATH for bash/ksh and 
  csh/tcsh.

This commit was SVN r7195.
2005-09-06 16:10:05 +00:00
Ralph Castain
7fc67f57a5 Little logic cleanup and handle thread locking correctly.
This commit was SVN r7192.
2005-09-06 14:04:43 +00:00
George Bosilca
648ef2ae5c One of the latest gcc version bark about a variable being use uninitialized. It was kind of right, because the
variable was protected by another one ... But with few modifications I get rid of this warning.

This commit was SVN r7189.
2005-09-06 03:13:03 +00:00
Brian Barrett
4e20c83204 * fix memory leak in ORTE startup
This commit was SVN r7186.
2005-09-05 21:03:02 +00:00
Jeff Squyres
3645816aef - Add copyrights
- Minor style fixes

This commit was SVN r7184.
2005-09-05 18:51:59 +00:00
Rainer Keller
588a62cb90 - Missed file in last commit
This commit was SVN r7179.
2005-09-04 20:55:27 +00:00
Rainer Keller
192625d2a1 - Once again: uninteresting cleanup to get diff smaller.
This commit was SVN r7178.
2005-09-04 20:54:19 +00:00
Ralph Castain
12daecb826 More cleanup
This commit was SVN r7167.
2005-09-03 01:22:11 +00:00
Ralph Castain
4b5b3b4164 Properly handle the argv array and clean it up when done.
This commit was SVN r7166.
2005-09-03 00:15:21 +00:00
Josh Hursey
78da530fd2 Fix a bug that Tim highlighted in which orted coredumps when an orterun is
CTRL-C'd. 
We were calling orte_finalize recursively which caused a segv when it tried to 
use a freed framework (orte_rmgr in this case).

I added a status flag to orte_universe_info to indicate where we are in the code.
This was needed to determine if we should call orte_abort or not when shutting
down in the tcp oob.

This commit was SVN r7160.
2005-09-02 21:07:21 +00:00
Ralph Castain
0f797fd40b Few more cleanups
This commit was SVN r7159.
2005-09-02 21:01:59 +00:00
Ralph Castain
4ed7752681 Continue cleaning up memory leaks during launch
This commit was SVN r7158.
2005-09-02 20:41:24 +00:00
Ralph Castain
f352890732 Cleaning up memory leaks for proxy operations.
This commit was SVN r7157.
2005-09-02 19:26:21 +00:00
Ralph Castain
4bd25e0292 Few minor memory leak cleanups
This commit was SVN r7156.
2005-09-02 18:50:01 +00:00
Jeff Squyres
a7fbb0f95e Put in comments about why these assignments exist
This commit was SVN r7146.
2005-09-02 10:27:23 +00:00
Jeff Squyres
7e4f696501 Fix silly compiler warnings
This commit was SVN r7145.
2005-09-02 10:26:41 +00:00
Ralph Castain
66a215eae1 More memory cleanup...
1. Valgrind is good for something - chasing down memory leaks in registry led me to re-visit the dictionary functions and discover that I wasn't keeping track of the number of dictionary entries on each segment! Resulted in wasted time searching blank entries as well as leaked memory. This has now been fixed.

2. Fixed the orte_bitmap test. The init function for that class has been eliminated and the constructor adjusted to provide that functionality.

This commit was SVN r7136.
2005-09-02 00:26:58 +00:00
Ralph Castain
76e622a552 Clean up a few memory leaks - more to go...
This commit was SVN r7134.
2005-09-01 17:38:04 +00:00
Ralph Castain
cb128ab87b Be a little more friendly and tell the user we couldn't reach their specified universe... :-)
This commit was SVN r7132.
2005-09-01 15:52:37 +00:00
Ralph Castain
d0f7dafc47 Revise the universe connection logic. Two cases are now handled:
1. user does NOT specify the universe name. For the default universe case, if we detect an existing default universe and cannot connect to it, we quietly create an alternative default name by adding the pid to the orte_default_universe name and move on - we no longer provide a warning message for this case.

2. user specified a universe name. If we detect an existing universe of that name and cannot connect to it, we consider this an error condition and abort.

This commit was SVN r7131.
2005-09-01 15:50:38 +00:00