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

206 Коммитов

Автор SHA1 Сообщение Дата
Josh Hursey
9bcb2989a5 Some general cleanup.
Added the FT-MPI interface functions. Many are hidden and not implemented,
but serve as place holders for future work.

This commit was SVN r6847.
2005-08-12 22:09:58 +00:00
Josh Hursey
e370141ae3 add memory manager init
This commit was SVN r6842.
2005-08-12 20:45:46 +00:00
Ralph Castain
67bd42d167 Fix a few minor compiler warnings
This commit was SVN r6816.
2005-08-12 04:07:47 +00:00
Tim Prins
311efa5bcc fix a small 64bit problem....
This commit was SVN r6814.
2005-08-11 20:36:07 +00:00
Josh Hursey
22c7f2b3e0 Quite a range of small changes.
ns_replica.c
 - Removed the error logging since I use this function in orte_init_stage1 to 
   check if we have created a cellid yet or not.

ras_types.h & rase_base_node.h
 - This was an empty file. moved the orte_ras_node_t from base/ras_base_node.h
   to this file.
 - Changed the name of orte_ras_base_node_t to orte_ras_node_t to match the 
   naming mechanisms in place.

ras.h
 - Exposed 2 functions:
   - node_insert:
     This takes a list of orte_ras_base_node_t's and places them in the Node 
     Segment of the GPR. This is to be used in orte_init_stage1 for singleton 
     processes, and the hostfile parsing (see rds_hostfile.c). This just puts 
     in the appropriate API interface to keep from calling the 
     orte_ras_base_node_insert function directly.
   - node_query:
     This is used in hostfile parsing. This just puts in the appropriate API 
     interface to keep from calling the orte_ras_base_node_query function 
     directly.
 - Touched all of the implemented components to add reference to these new 
   function pointers

ras_base_select.c & ras_base_open.c
 - Add and set the global module reference

rds.h
 - Exposed 1 function:
   - store_resource:
     This stores a list of rds_cell_desc_t's to the Resource Segment. 
     This is used in conjunction with the orte_ras.node_insert function in 
     both the orte_init_stage1 for singleton processes and rds_hostfile.c

rds_base_select.c & rds_base_open.c
 - Add and set the global module reference

rds_hostfile.c
 - Added functionality to create a new cellid for each hostfile, placing 
   each entry in the hostfile into the same cellid. Currently this is 
   commented out with the cellid hard coded to 0, with the intention of 
   taking this out once ORTE is able to handle multiple cellid's
 - Instead of just adding hosts to the Node Segment via a direct call to 
   the ras_base_node_insert() function. First add the hosts to the Resource 
   Segment of the GPR using the orte_rds.store_resource() function then use 
   the API version of orte_ras.node_insert() to store the hosts on the Node 
   Segment.
 - Add 1 new function pointer to module as required by the API.

rds_hostfile_component.c
 - Converted this to use the new MCA parameter registration

orte_init_stage1.c
 - It is possible that a cellid was not created yet for the current environment. 
   So I put in some logic to test if the cellid 0 existed. If it does then 
   continue, otherwise create the cellid so we can properly interact with the 
   GPR via the RDS.
 - For the singleton case we insert some 'dummy' data into the GPR. The RAS 
   matches this logic, so I took out the duplicate GPR put logic, and 
   replaced it with a call to the orte_ras.node_insert() function.
 - Further before calling orte_ras.node_insert() in the singleton case, 
   we also call orte_rds.store_resource() to add the singleton node to the 
   Resource Segment.

Console:
 - Added a bunch of new functions. Still experimenting with many aspects of the
   implementation. This is a checkpoint, and has very limited functionality.
 - Should not be considered stable at the moment.

This commit was SVN r6813.
2005-08-11 19:51:50 +00:00
Greg Watson
88c4505e6e Enable component by default.
This commit was SVN r6811.
2005-08-11 19:14:24 +00:00
Greg Watson
ad958e3f19 Fix build problem caused by these functions just "going away".
This commit was SVN r6810.
2005-08-11 19:13:09 +00:00
Josh Hursey
bf2789fc66 Added some error logging for unimplemented daemon commands.
This commit was SVN r6809.
2005-08-11 16:57:06 +00:00
Tim Prins
36435cbe4a a small change to make this configure test right.
This component is ompi_ignored so no need to autogen.....

This commit was SVN r6807.
2005-08-11 14:29:40 +00:00
Josh Hursey
c92c3effb6 Made a global base_module of function pointers for both frameworks.
This commit was SVN r6806.
2005-08-10 22:49:41 +00:00
Josh Hursey
abe16e3fa4 Convert to use new MCA param reg functions
This commit was SVN r6805.
2005-08-10 21:05:13 +00:00
Josh Hursey
52cf1e69e0 update makefile for addition of new header file
This commit was SVN r6803.
2005-08-10 20:03:20 +00:00
Josh Hursey
afe7e687cb A bit of cleanup and a couple of bug fixes for remote orted launching
using orteprobe.

Created a header file for orte_setup_hnp. [HNP = Head Node Process]

General cleanup and added a bit of documentation in orte_setup_hnp.c
Also fixed a cellid tokens issue (circa line 285)
Changed the launched scope from private to public

In orteprobe:
- added reference to orted.h to avoid duplicate header contents in orteprobe.h
- removed the version tag, and put in a verbose argument
- Fixed a buffer packing problem that was causing the parent from receiving the
  proper contact information for the new daemon.

This commit was SVN r6802.
2005-08-10 20:01:25 +00:00
Jeff Squyres
ef1abb71d3 Check to see if the MCA param already exists before registering it.
If you register a parameter a second time, it overwrites the default
value (this was causing a problem with mpirun not being marked as orte
infrastructure, and therefore thinking that it was a singleton, and
therefore always adding the localhost into the node list).

This commit was SVN r6789.
2005-08-09 21:03:33 +00:00
Tim Prins
24dc319237 - added more documentation
- converted some things to new MCA param API
 - renamed the pls_bproc_seed component struct so its name isn't the same as
   the pls_bproc component's struct
 - minor bugfixes

This commit was SVN r6774.
2005-08-08 22:17:22 +00:00
Jeff Squyres
f8fa8f4935 Fix a problem found by Tim Prins (patch also supplied by Tim P). From
his e-mail:

I ran into a small bug in rmaps_rr.c: map_app_by_slot which was
triggered by using multiple app contexts. Basically, if not all the
slots we allocated on a node were used by an app, we would
automatically move onto the next node. This caused a problem with
multiple app contexts when the first app takes a partial allocation of
a node, the second app would not be able to access these slots because
we had already move past the node, and the byslot routine does not
wrap back around the list.

This commit was SVN r6766.
2005-08-08 18:56:17 +00:00
Jeff Squyres
32e71e5c6c Fix a problem where orterun itself would not receive MCA parameters
that were set on the command line.  This was techinically exactly the
way the code was designed, but it certainly violated the Law of Least
Astonishment (even to its designer ;-) ).  So now if you execute
something like this:

   mpirun -mca pls_rsh_debug 1 -np 4 hello

You'll see debugging output from the rsh pls component, as you would
expect (this was not previously the case -- the MCA pls_rsh_debug
parame would be set to 1 in the 4 spawned hello processes, but *not*
in the orterun process).

More specifically, MCA parameters will be set in the orterun process
in the following cases:

- The new command line switch "--gmca" (or "-gmca") is used,
  indicating that the MCA parameter is "global".  --gmca also means
  that that MCA parameter will be applied to all context app's.  For
  example:

      mpirun -gmca foo bar -np 1 hello : -np 2 goodbye

  The foo MCA param will be set in both the hello and goodbye
  processes.

- If there is only one context app.  For example:

      mpirun -mca pls_rsh_debug 1 -np 4 hello

  will set pls_rsh_debug to 1 in both the orterun process and the 4
  spawned hello processes.

Also added a few more comments inside orterun to document a somewhat
confusing use of a state variable in a recursive case.

This commit was SVN r6764.
2005-08-08 16:42:28 +00:00
Ralph Castain
3c13d699f8 Remove an old file.
This commit was SVN r6762.
2005-08-08 13:41:53 +00:00
Ralph Castain
e583f6a97f Add a couple of new functions to the schema framework to check if a trigger is a "standard" trigger or not, and to extract a jobid from a standard trigger. Both functions will be used in a later commit.
Ensure that the seed set_my_name function sets all the right initial info in the name services' structures.

This commit was SVN r6760.
2005-08-07 13:26:49 +00:00
Ralph Castain
c530521a8e Add several new interface functions to the name services:
1. dump_xxx - analogous to the registry's dump commands, allows you to examine the contents of the name services' structures

2. get_job_peers - get an array of process names for all processes in the specified job

This commit was SVN r6759.
2005-08-07 13:21:52 +00:00
Ralph Castain
1438009dbd Properly set the MCA parameter to indicate these functions are infrastructure so that the singleton flag does not get set.
Somehow, in changing over to the new MCA interfaces, the "set" part of that logic got lost, so the singleton flag was always being set. This should repair some of the anomalous behavior seen recently where the local host was always being used for an application process.

This commit was SVN r6757.
2005-08-07 04:17:10 +00:00
Josh Hursey
3b187c4db3 Fix the 'delete container' logic in gpr to prevent recursive delete of all
containers when one is requested.

Fix a bug in gpr_replica_del_index_api which doesn't preset num_tokens and
num_keys, but assumes they are 0.

Fix orte_ras_base_node_delete() function to operate properly to delete the
appropriate container in the 'orte-node' segment when requested.

This commit was SVN r6756.
2005-08-05 23:37:39 +00:00
George Bosilca
14ffc85379 I want to have it compiled too.
This commit was SVN r6754.
2005-08-05 18:47:12 +00:00
Jeff Squyres
d0a0434172 Investigating an MCA param problem -- converted over orterun to new
MCA param API in the process.

This commit was SVN r6739.
2005-08-04 18:15:47 +00:00
Josh Hursey
12031db535 Added missing help file.
This commit was SVN r6737.
2005-08-04 17:40:22 +00:00
Jeff Squyres
aa9bdcfec5 Make some fixes and add some features to the rsh pls:
- convert MCA params to the new API
- some style and indenting fixes
- look at local shell, and if [new] MCA param
  pls_rsh_assume_same_shell is 1, then assume that the remote shell is
  the same as the local shell.  If pls_rsh_assume_same_shell is 0, do
  a probe to figure out what the remote shell is (NOT CURRENTLY
  IMPLEMENTED! you'll get a run-time warning if you set this MCA param
  to 0).
- if the remote shell is not csh and not bash, then prefix the remote
  command with "( ! [ -e ./.profile ] || . ./.profile;" (and suffix it
  with ")") so that we run the .profile on the remote side in order to
  set PATHs and the like.  See the LAM FAQ for details (will someday
  be on the Open MPI FAQ:
  http://www.lam-mpi.org/faq/category4.php3#question8)
- add a bunch of debugging output if the MCA param pls_rsh_debug is
  enabled (or the top-level debug MCA param is enabled)
- add more help messages (and corresponding calls to opal_show_help())
  in help-pls-rsh.txt

This commit was SVN r6731.
2005-08-04 15:09:02 +00:00
Tim Prins
2d707f34a0 - make persistent daemons work with bproc
- added documentation
 - code cleanups

This commit was SVN r6726.
2005-08-03 20:24:52 +00:00
Tim Prins
aa0525da98 Improvements in bproc support:
- we now properly support multiple application contexts
 - much improved error messages, using opal_show_help
 - fix some small bugs in the way the processes were discovering their names
 - better searching for orted
 - use the new mca parameter interface

These changes still need some testing, but they seem stable.

This commit was SVN r6719.
2005-08-02 22:22:55 +00:00
Ralph Castain
4e1837687b Finish simplified interfaces for put and subscribe - more details to come.
This commit was SVN r6713.
2005-08-02 19:43:29 +00:00
Jeff Squyres
ef9e06451c Ensure that --mca is listed in the --help message (thanks for pointing
this out Gleb!)

This commit was SVN r6712.
2005-08-02 18:52:12 +00:00
Brian Barrett
d7bb611a74 * make all the sds components follow the prefix rule. Shame on me.
This commit was SVN r6710.
2005-08-02 18:51:28 +00:00
Josh Hursey
c6a3e67f07 switch from if's to ifdef's to prevent compiler warnings
This commit was SVN r6705.
2005-08-02 17:07:21 +00:00
Ralph Castain
716f465ce3 Fix a typo
This commit was SVN r6704.
2005-08-02 15:54:36 +00:00
Josh Hursey
943a74e266 Checkpoint.
- Add functionality to parse multiple arguments provided in the console
- Cleaned up help function
- Added an option to hide commands from the help menu

Working on launching and reaping of daemons from within the console.

This commit was SVN r6699.
2005-08-01 22:52:48 +00:00
Josh Hursey
0c32f34cb7 Let's clean up the block comment parsing to be a bit more lex-like.
This commit was SVN r6695.
2005-08-01 22:25:47 +00:00
Josh Hursey
50545ef082 Additional Comment possibilities supported for both hostfile and
mca param file.
------
/*
 * Block Quote
 */

// Line Quote

# Shell Style Line Quote
-------

This commit was SVN r6694.
2005-08-01 22:11:26 +00:00
Josh Hursey
9447050dcf Added comments to lex parser. Now you can have a hostfile that looks like:
#
# this is my hostfile
#
frogger1
frogger2
#frogger3

and it will only use frogger 1&2.

This commit was SVN r6692.
2005-08-01 21:14:09 +00:00
Ralph Castain
8c6c78c47a Add a few new functions that were requested last week - not tested yet, so please don't use them! I will test them this afternoon on a different computer. For now, they won't cause any problems since they aren't being called.
This commit was SVN r6689.
2005-08-01 16:38:15 +00:00
Tim Prins
40bf905e8e - minor bug fixes
- better error message if the daemon dies

This commit was SVN r6687.
2005-07-29 20:02:56 +00:00
Josh Hursey
835dad20d5 forgot to add orteconsole.h to the distro in the makefile
This commit was SVN r6686.
2005-07-29 17:57:35 +00:00
Ralph Castain
4e79a51395 Add a job_info segment to the system that holds a container for each job. Within each container is a keyval indicating the job state (i.e., all procs at stage1, finalized, etc.). This provides a rough state-of-health for the job.
This required a little fiddling with a number of areas. Biggest problem was that it uncovered a potential for an infinite loop to be created in the registry. If a callback function modified the registry, the registry checked the triggers to see if anything had fired. Well, if the original callback was due to a trigger firing, that condition hadn't changed - so the trigger fired again....which caused the callback to be called, which modified the registry, which checked the triggers, etc. etc.

Triggers are now checked and then "flagged" as being "in process" so that the registry will NOT recheck that trigger until all callbacks have been processed. Tried doing this with subscriptions as well, but that caused a problem - when we release processes from a stagegate, they (at the moment) immediately place data on the registry that should cause a subscription to fire. Unfortunately, the system will just hang if that subscription doesn't get processed. So, I have left the subscription system alone - any callback function that modifies the registry in a fashion that will fire a subscription will indeed fire that subscription. We'll have to see if this causes problems - it shouldn't, but a careless user could lock things up if the callback generates a callback to itself.

Also fixed the code that placed a process' RML contact info on the registry to eliminate the leading '/' from the string.

This commit was SVN r6684.
2005-07-29 14:11:19 +00:00
Josh Hursey
9acbd4e21f forgot to take out initalizer when I removed the verbose stuff
This commit was SVN r6682.
2005-07-29 00:21:10 +00:00
Josh Hursey
e849f7ba07 Significant clean up of the orteconsole.
- Added user help messages.
 - Abstracted the internal commands, and the mechanism for
   parsing and executing them.
 - Cleaned up the command line parsing
 - Some other misc. cleanup items.

Still much more work to do here, but should provide a more
intuitive interface for extending functionality in the 
system.

This commit was SVN r6676.
2005-07-28 23:48:46 +00:00
Tim Prins
5a4f8a257d - enabled new bproc components
- added support for Scyld bproc and old LANL bproc

This commit was SVN r6674.
2005-07-28 22:28:38 +00:00
Josh Hursey
018c4aa44e remove unnecessary slashes
This commit was SVN r6673.
2005-07-28 21:33:33 +00:00
Josh Hursey
8b56769307 removed the version command line option. Added some more user help messages
This commit was SVN r6672.
2005-07-28 21:17:48 +00:00
Josh Hursey
5ad860fc47 forgot to take out a line in the help message.
This commit was SVN r6671.
2005-07-28 20:51:56 +00:00
Josh Hursey
8deed21e00 Replaced some stderr fprintfs with opal_show_help functions, with
more user friendly error messages.

Removed the "--version" command line option, since they should 
get this from ompi_info [later to be orte_info].

If we find an invalid command line option print out the help
screen before exiting.

This commit was SVN r6670.
2005-07-28 20:49:17 +00:00
George Bosilca
9fdfbd9934 correct the printf for 64 bits architectures.
This commit was SVN r6667.
2005-07-28 19:54:06 +00:00
Brian Barrett
747f23099e * fix some warnings
This commit was SVN r6661.
2005-07-28 19:25:47 +00:00
Josh Hursey
033b0be417 clean up help msg for orted
This commit was SVN r6657.
2005-07-28 18:38:37 +00:00
Brian Barrett
f8fb43d792 * don't recurse into badness - call the function we want to call
This commit was SVN r6656.
2005-07-28 18:33:55 +00:00
Josh Hursey
707fbb35ce added help message file to orted
This commit was SVN r6655.
2005-07-28 17:18:33 +00:00
Brian Barrett
b0b6ddd078 * add --enable-heterogeneous (default: enabled) to enable heterogeneous
support in OMPI.  Currently only enables/disables the architecture
  sharing modex in ob1 pml.
* Add sds framework to ompi_info
* Figure out table ids to use for Portals BTL at configure time, since
  we should use 30 & 31 on Red Storm, but the reference implementation
  only supports 0-8.
* Some bug fixes in Portals UTCP sds

This commit was SVN r6650.
2005-07-28 16:16:13 +00:00
Brian Barrett
a474dabab0 * don't assume select has been called during close
* expose sds component list for ompi_info
* forgot to add pipe put into the list of put functions

This commit was SVN r6645.
2005-07-28 15:14:46 +00:00
Jeff Squyres
bbf7da16ff Print a friendly message when the local exec can't find the orted.
This commit was SVN r6643.
2005-07-28 13:00:32 +00:00
Brian Barrett
2852772b32 * add a bunch of svn:ignored files
* Add Portals UTCP reference sds for when we are using the portals
  reference implementation without the ORTE starters (when we want to
  pretend like we're on Red Storm, only with a debugger and valgrind and
  possibly even a printf that actually works...)
* Add super-secret --with flag to cnos rml to enable the cnos rml but
  disable cnos_barrier (for use with portals utcp reference implementation)

This commit was SVN r6642.
2005-07-28 06:23:34 +00:00
Brian Barrett
93ddb4bf73 * some fixups for the cnos components
This commit was SVN r6637.
2005-07-28 00:11:09 +00:00
Brian Barrett
1ce2e26272 Move set_my_name (NDS) functionality from ns_base and universe contact
test from orte_init_stage1 into a new framework, Startup Discovery Service
(sds).  This allows us to have more flexibility with platforms like
Red Storm, which do not have a universe in the usual meaning and don't have
a seed daemon they can contact

This commit was SVN r6630.
2005-07-27 23:18:16 +00:00
Brian Barrett
6aa464b67e More changes from Red Storm port
- only call sched_yield if it exists
  - don't fail out if modex doens't work in ob1
  - bunch of fixes for Portals BTL
  - add cnos rml component
  - add NULL gpr component (should only be used if replica AND proxy
    fail to load)  

This commit was SVN r6629.
2005-07-27 23:07:14 +00:00
Tim Prins
b7ab5f1ec8 only compile the bproc soh component if we are on bproc 4
This commit was SVN r6625.
2005-07-27 22:13:21 +00:00
Tim Prins
384639c5cc - more build system updates for bproc
This commit was SVN r6609.
2005-07-26 22:12:03 +00:00
Tim Prins
dcc81eb598 - fix a bug which made compiles fail when '--with-bproc' is passed
- various bugfixes for bproc components

This commit was SVN r6603.
2005-07-25 22:21:40 +00:00
Tim Prins
6aceaf81b7 - properly kill off daemons
- code cleanup

This commit was SVN r6601.
2005-07-25 15:57:15 +00:00
Tim Prins
70587299f3 - respect configure options --without-bproc and --with-bproc=no
- check for a recent version of LANL bproc by looking for sys/bproc_common.h

This commit was SVN r6596.
2005-07-22 22:41:35 +00:00
Ralph Castain
13fdcff66b Fix a bug Greg was seeing on subscription returns - problem in pointer arithmetic
This commit was SVN r6594.
2005-07-22 20:46:07 +00:00
Thara Angskun
cbed508d9a This commit was SVN r6593. 2005-07-22 18:04:07 +00:00
Tim Prins
73171fb09d - added configure.m4 so we only compile the bproc soh component if we have bproc
- updated svn:ignore

This commit was SVN r6591.
2005-07-22 14:34:39 +00:00
Greg Watson
986f9e5a07 unignore this component
This commit was SVN r6589.
2005-07-21 22:33:04 +00:00
Greg Watson
4ab9a924aa Avoid multiple calls to update_registry(). Also added sanity check.
This commit was SVN r6588.
2005-07-21 22:31:55 +00:00
Brian Barrett
d4058f65e2 * make "no oobs found" output only occur if verbose is set. Needed in rare
times it's ok not to have an oob

This commit was SVN r6582.
2005-07-21 20:21:57 +00:00
Tim Woodall
eb0ed5f3d0 correct typo
This commit was SVN r6580.
2005-07-21 20:18:39 +00:00
Tim Prins
9aa319b082 for new bproc components,
- improved cleanup on slave nodes
- respect the configure option not to use ptys
- various code cleanups

This commit was SVN r6579.
2005-07-21 19:53:04 +00:00
Tim Woodall
f5ad856857 don't kill the seed daemon
This commit was SVN r6578.
2005-07-21 19:45:05 +00:00
Tim Woodall
7010548c1b correct byte order conversions for size_t == 8 bytes
This commit was SVN r6577.
2005-07-21 17:45:09 +00:00
Tim Prins
35041a0f01 - improved error handling
- code cleanups
- improved cleanup, but still needs work

This commit was SVN r6569.
2005-07-20 20:39:06 +00:00
Ralph Castain
f604fb72db Turn "on" the delete functionality for the registry. Should now be able to delete entries and segments, and get an index of the dictionary entries on the registry.
Haven't fully tested these yet (nobody is using them at the moment that I know of - good thing, since they haven't been working for a long time - though I know the MPI-2 stuff needs the functionality), but will do so shortly. For now, they compile.

This commit was SVN r6567.
2005-07-20 18:07:46 +00:00
Tim Woodall
b46023565f set the current directory before trying to exec/dump the binary
This commit was SVN r6562.
2005-07-20 14:26:09 +00:00
George Bosilca
96ff4b0b10 memset require string.h on Linux.
This commit was SVN r6559.
2005-07-20 06:45:00 +00:00
Tim Prins
acb9365793 - added an error message so we don't just segfault when the specified oob
interfaces do not have valid addresses.
- properly record the pids of launched processes in the new bproc component

This commit was SVN r6553.
2005-07-19 20:12:51 +00:00
Ralph Castain
5e437f9a09 Fix a potential "free" that shouldn't happen
This commit was SVN r6552.
2005-07-19 16:21:06 +00:00
Ralph Castain
9af1739d33 Correct an opal_hash_table_get/set_proc name to orte_hash_table_get/set_proc.
Remove a couple of unused variable complaints from registry dump.

This commit was SVN r6550.
2005-07-19 13:33:04 +00:00
Jeff Squyres
74744dd9df Fix a holdover mistake from the directory re-org:
- orte/class/ompi_proc_table.[ch] -> orte/class/orte_proc_table.[ch]
- opal_hash_table_[get|set|remove]_proc -> 
  orte_hash_table_[get|set|remove]_proc

This commit was SVN r6549.
2005-07-19 12:25:19 +00:00
Jeff Squyres
7e413d6c26 Remove mistaken return with a value in a void function.
This commit was SVN r6548.
2005-07-19 12:23:41 +00:00
Jeff Squyres
41f9cd8224 Add missing <sys/types.h> for size_t and friends (which is not
automatically included in optimized builds).

This commit was SVN r6547.
2005-07-19 12:23:07 +00:00
Ralph Castain
485e549f38 missing file
This commit was SVN r6545.
2005-07-18 21:18:26 +00:00
Ralph Castain
19d58ee17e First phase of the scalable RTE changes:
1. Modify the registry to eliminate redundant data copying for startup messages.

2. Revise the subscription/trigger system to avoid redundant storage of triggers and subscriptions. This dramatically reduces the search time when a registry action occurs - to illustrate the point, there are now only a handful of triggers on the system for each job. Before, there were a handful of triggers for each PROCESS in the job, all of which had to be checked every time something happened on the registry. This is much, much faster now.

3. Update all subscriptions to the new format. There are now "named" subscriptions - this allows you to "name" a subscription that all the processes will be using. The first one to hit the registry actually defines the subscription. From then on, any subsequent "subscribes" to the same name just cause that process to "attach" to the existing subscription. This keeps the number of subscriptions being tracked by the registry to a minimum, while ensuring that each process still gets notified.

4. Do the same for triggers.

Also fixed a duplicate subscription problem that was causing people to receive data equal to the number of processes times the data they should have received from a trigger/subscription. Sorry about that... :-( ...but it's all better now!

Uncovered a situation where the modex data seems to be getting entered on the registry a second time - the latter time coming after the compound command has been "fired", thereby causing all the subscriptions to fire. Asked Tim and Jeff to look into this.

Second phase of the changes will involve modifying the xcast system so that the same message gets sent to all processes. This will further reduce the message traffic, and - once we have a true "broadcast" version of xcast - really speed things up and improve scalability.

This commit was SVN r6542.
2005-07-18 18:49:00 +00:00
Tim Prins
75b0fa3c87 cleanup
This commit was SVN r6541.
2005-07-18 16:55:49 +00:00
Tim Prins
03907e12b2 this logic is done elsewhere
This commit was SVN r6540.
2005-07-18 16:31:58 +00:00
Ralph Castain
526217b9fc Two things here:
1. Fix the reigstry's overwrite logic. It was only overwriting the first keyval specified in a value - the rest were just added on regardless of whether or not the keyval already existed. This was the source of the multiple keyvals some people were seeing - should be fixed now.

2. Change the orted command parsing options so it reports options that aren't recognized - should help reduce confusion

This commit was SVN r6536.
2005-07-16 23:08:15 +00:00
Greg Watson
cbb62f4ba3 Tidy up.
This commit was SVN r6529.
2005-07-15 19:54:18 +00:00
Greg Watson
6df94466cf Moved to bproc component header.
This commit was SVN r6513.
2005-07-15 04:24:16 +00:00
Greg Watson
6f38d05a9f Install header.
This commit was SVN r6512.
2005-07-15 04:23:37 +00:00
Greg Watson
7232f648a6 Moved from component header.
This commit was SVN r6511.
2005-07-15 04:23:06 +00:00
Greg Watson
ed8f563a6f Default debug off.
This commit was SVN r6510.
2005-07-15 04:22:35 +00:00
Greg Watson
eaba912169 Only update registry key that actually changed.
This commit was SVN r6509.
2005-07-15 04:22:04 +00:00
Tim Prins
5a12889d4e make launching multiple apps work again and some code cleanups
This commit was SVN r6498.
2005-07-14 20:40:05 +00:00
Brian Barrett
14b89e0e50 Bunch more updates from operation Red Storm:
* Add ability to completely disable libltdl (the dlopen code to load
  dynamic shared objects) to configure: --disable-dlopen
* Added MCA param (component_disable_dlopen) to disable DSO loading
  at runtime
* Made the event library behave in some not-completely-erroneous way
  on platforms where it has absolutely no eventops support (ie, no
  select, poll, or epoll)
* Disabled orte_wait, opal_few, and opal_daemon_init code on
  platforms without fork, waitpid support.  All non-init functions
  will return OPMI_ERR_NOT_SUPPORTED
* Disable orteprobe tool when fork or pipe aren't supported

This commit was SVN r6490.
2005-07-14 18:05:30 +00:00
Tim Woodall
beba576af5 removed bogus error message
This commit was SVN r6489.
2005-07-14 15:41:33 +00:00
Tim Woodall
d52252065d - dont require NODES environment variable
- ignore existing nodes that aren't valid

This commit was SVN r6488.
2005-07-14 15:40:30 +00:00