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

449 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
b080d7360c Remove useless compiler warning
This commit was SVN r6886.
2005-08-15 16:48:43 +00:00
Galen Shipman
0b0e4874d0 cleanup comments and minor adjustments.
This commit was SVN r6882.
2005-08-15 15:19:07 +00:00
Brian Barrett
e5eba51e9f * update rdma min size to be 64K. Seems to give best performance on RS.
This commit was SVN r6880.
2005-08-15 13:30:35 +00:00
Jeff Squyres
c465eb8567 Rename opal/threads/thread.h -> opal/threads/threads.h to avoid a
naming conflict with Solaris' <thread.h>

This commit was SVN r6879.
2005-08-15 11:02:01 +00:00
Brian Barrett
b9452e5afe * finish switch to sending in place
This commit was SVN r6876.
2005-08-15 02:31:45 +00:00
Galen Shipman
adb20d6fcf fix sync send..
This commit was SVN r6875.
2005-08-14 22:10:08 +00:00
Galen Shipman
8e1e2eec3d Misc fixes for threaded builds..
This commit was SVN r6874.
2005-08-14 19:03:09 +00:00
Brian Barrett
ffd16db795 * fix missing continuation character in r2 when building threaded
This commit was SVN r6870.

The following SVN revision numbers were found above:
  r2 --> open-mpi/ompi@58fdc18855
2005-08-14 15:31:27 +00:00
Brian Barrett
f273d84b1b * update ob1 to direct call
* don't know what I was thinking, but can't use the MCA_PML_CALL macro on
  the two data values, as they don't have things that the macro can
  expand into

This commit was SVN r6868.
2005-08-14 03:14:20 +00:00
Brian Barrett
f68ede1c93 * turn off debugging in the bowels of the Portals reference implementation
This commit was SVN r6864.
2005-08-14 02:05:23 +00:00
Brian Barrett
51531af9df * implement Portals btl get
This commit was SVN r6862.
2005-08-13 20:55:29 +00:00
Brian Barrett
8aca9ef966 * remove need to edit project/Makefile.am and project/{dynamic-,}mca/Makefile.am when adding a new component. Configure / autogen now do it for you.
* Add base to memory framework so that we can do something sane with
  ompi_info
* Updated ompi_info to print components for memory framework and
  show whether we have memory hooks active or not.

This commit was SVN r6861.
2005-08-13 20:19:24 +00:00
Brian Barrett
c83cb66bf2 * Portals can send "in place"
This commit was SVN r6860.
2005-08-13 19:43:08 +00:00
Jeff Squyres
2cf38dc59f Add hooks in ompi_info for the new paffinity framework
This commit was SVN r6857.
2005-08-13 16:07:37 +00:00
Galen Shipman
067357617f add r2 to sources..
This commit was SVN r6853.

The following SVN revision numbers were found above:
  r2 --> open-mpi/ompi@58fdc18855
2005-08-13 05:32:01 +00:00
Galen Shipman
c3fcf25508 fix to add_procs
This commit was SVN r6846.
2005-08-12 21:42:55 +00:00
Jeff Squyres
cf16a521c8 Ensure to get ompi/include/constants.h
This commit was SVN r6845.
2005-08-12 21:42:07 +00:00
Tim Woodall
0ab588e5d2 added support for sending eager messages directly from user buffer
if supported by btl - btl must set MCA_BTL_FLAGS_SEND_INPLACE

This commit was SVN r6844.
2005-08-12 21:33:01 +00:00
Tim Woodall
15c5fd6092 cleanup
This commit was SVN r6838.
2005-08-12 19:29:05 +00:00
Tim Woodall
faf146ec4c correct address count
This commit was SVN r6837.
2005-08-12 19:01:04 +00:00
Galen Shipman
58f7c3abfb Makefile typo...
This commit was SVN r6834.
2005-08-12 17:01:30 +00:00
Galen Shipman
df78b8957c Misc fixes.. no need for procs hashtable in bml_r2..
This commit was SVN r6833.
2005-08-12 16:59:15 +00:00
Tim Woodall
5558c014b9 default TCP to only be used if self/sm/gm/mvapi.... are not available
This commit was SVN r6832.
2005-08-12 16:56:46 +00:00
Brian Barrett
a63f6e6ce6 re-add values for max tag and max cid to TEG and UNIQ.
This commit was SVN r6830.
2005-08-12 16:28:16 +00:00
Galen Shipman
9cbcdae14b more BML related stuff.. static_components.h is autogen'd configure.params is
not. Compile warning fixed in pml_ob1_sendreq.c

This commit was SVN r6821.
2005-08-12 14:40:06 +00:00
Brian Barrett
2c44b2398d * remove the src/ directory for Portals BTL to bring it in line with the
other BTLs

This commit was SVN r6820.
2005-08-12 14:33:45 +00:00
Galen Shipman
b01ebf45c9 Fixed build error related to direct call (bml_direct_call.h). Misc bug fixes
and compiler warning issues. Fixed threaded build issue. 

This commit was SVN r6819.
2005-08-12 14:08:40 +00:00
Galen Shipman
c3c83aa3e1 BML (BTL Managment Layer). Allows BTL's to be used outside of the PML. See
bml.h and PML-OB1 for usage. 

This commit was SVN r6815.
2005-08-12 02:41:14 +00:00
Tim Woodall
e083c706dc removed debug output
This commit was SVN r6812.
2005-08-11 19:25:45 +00:00
Jeff Squyres
b405316075 These should no longer be here.
This commit was SVN r6801.
2005-08-10 19:49:10 +00:00
Jeff Squyres
51de13bb97 Arrgh -- re-indenting this morning accidentally used real tabs instead
of spaces (curses!  indent(1) had been updated with a new option that
I did not use).  This commit simply converts tabs to real spaces.

This commit was SVN r6799.
2005-08-10 17:53:43 +00:00
George Bosilca
988f70edd8 Correct gatherv and allgatherv collective communications. Always do any internal send even if the count
is zero as the receive is always posted.

This commit was SVN r6798.
2005-08-10 17:30:46 +00:00
Brian Barrett
d9e5e3343d * random code cleanup
This commit was SVN r6797.
2005-08-10 15:26:15 +00:00
Brian Barrett
d4aa9c702c * remove unused files
This commit was SVN r6796.
2005-08-10 15:11:05 +00:00
Tim Woodall
d458daf437 support for priority flag
This commit was SVN r6795.
2005-08-10 14:32:10 +00:00
Jeff Squyres
a8fa19c5c1 Patch simply to re-indent all of the basic coll component to 4 space
tabs (Jeff takes the blame for originally writing it with 2 space
tabs).  Changes to fix the PMB coming soon.

This commit was SVN r6793.
2005-08-10 10:51:42 +00:00
George Bosilca
a59fa8ac42 Always send a message even when the send_count is zero. Except for local operations (send + receive),
they can be safely skiped.

This commit was SVN r6792.
2005-08-10 04:41:14 +00:00
Galen Shipman
73757b300c Added BTL_VERBOSE and OMPI_MCA_btl_base_debug , if set to 1 DEBUG output if
set to 2 VERBOSE output.. 

This commit was SVN r6783.
2005-08-09 17:49:39 +00:00
Tim Woodall
9b21413fe2 corrected newline
This commit was SVN r6781.
2005-08-09 16:24:48 +00:00
Tim Woodall
b4caa9f9f1 added verbose macro
This commit was SVN r6780.
2005-08-09 16:22:55 +00:00
Jeff Squyres
e8dab828e0 Update the sm ptl per the fixes to the sm btl and common components
from yesterday.

This commit was SVN r6779.
2005-08-09 16:17:50 +00:00
Brian Barrett
95fd068ffa remove hard coded constants for value of MPI_TAG_UB and the max CID and add
the values to the PML structure.  This will allow PMLs that want to do
hardware matching at the cost of a smaller range of valid tags and cids.
Updated all the places that used the MPI_TAG_UB_VALUE constant to instead
look at the pml struct.

This commit was SVN r6778.
2005-08-09 14:56:04 +00:00
Brian Barrett
88d316d443 * turn RDMA back on and wonder how I ever committed a patch turning it off...
This commit was SVN r6776.
2005-08-09 14:11:56 +00:00
Tim Woodall
078836c5b9 added put support for zero copy operation
This commit was SVN r6775.
2005-08-09 14:10:17 +00:00
Jeff Squyres
ba31fbf132 A better solution than r6672. If the caller passes in a data segment
alignment of 0, then assume there will be no data segment and don't do
the checks to see if it will be beyond the end of the file.

This commit was SVN r6773.

The following SVN revision numbers were found above:
  r6672 --> open-mpi/ompi@8b56769307
2005-08-08 21:38:27 +00:00
Jeff Squyres
1c5382deac - Fix a minor problem in alignment logic in sm common component
- Adjust btl sm to allocate just a few bytes extra to allow the common
  sm component to assume that there will be a data segment (even though
  the sm btl doesn't use the data segment in that portion of code)

This commit was SVN r6772.
2005-08-08 21:29:05 +00:00
Brian Barrett
6e2b07db91 * update Red Storm compat code to match today's changes
This commit was SVN r6771.
2005-08-08 21:22:15 +00:00
Tim Woodall
e9ca560f16 corrections for probe/iprobe
This commit was SVN r6770.
2005-08-08 21:07:12 +00:00
Brian Barrett
694bbc158f * Set max tag for BTLs to 255 not 256
* Major rework of Portals to better match Red Storm and hopefully get
  better performance:
  - Always assume there is only one module (since there are no machines
    on the planet with more than one Portals interface)
  - make progress all one function rather than dispatching to other
    functions and dispatch on event type, not comm type
  - remove polling of unneeded events

This commit was SVN r6769.
2005-08-08 20:56:26 +00:00
Galen Shipman
ba82bc11bc bug fixes and configure check for topspin directory structure..
This commit was SVN r6767.
2005-08-08 19:10:36 +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
Brian Barrett
6f0b51e4db * only include sys/ioctl.h if it exists
This commit was SVN r6761.
2005-08-08 13:15:06 +00:00
George Bosilca
439101dd00 Remove some compilation warnings.
This commit was SVN r6753.
2005-08-05 18:37:42 +00:00
George Bosilca
342fef77d0 Change the default name for the PML PTL from mca_pml_base_ptl_t to mca_pml_teg_ptl_t.
Just for consistency. (same thing was done by Rainer on the UNIQ PML in the revision 6749).

This commit was SVN r6752.
2005-08-05 18:26:53 +00:00
George Bosilca
f062a679d9 I miss this one in the last patch (just a function name change).
This commit was SVN r6751.
2005-08-05 18:04:52 +00:00
George Bosilca
8b93cb7661 Rename all the functions starting with mca_base_modex to mca_pml_base_modex.
Change all the places where they are used to fit the new name.

Remove the code to check the remote arch from the PML. We will have a GPR mechanism
in ompi_mpi_initialize to do that.

This commit was SVN r6750.
2005-08-05 18:03:30 +00:00
Rainer Keller
c696603fce More intrusive version of patch.
Rename components from mca_pml_base... to more correct mca_pml_uniq...

This commit was SVN r6749.
2005-08-05 17:28:19 +00:00
Jeff Squyres
7678050a2f Grumble. Add *more* missing files...
This commit was SVN r6748.
2005-08-05 14:17:14 +00:00
Rainer Keller
9dc4aa583e Minimal possible change to allow static-linking of ompi:
otherwise the mca_pml_base_ptl_t-Class is doubly defined, due
to the close similarity to teg.

This commit was SVN r6747.
2005-08-05 13:57:06 +00:00
Jeff Squyres
8ea1fec353 Add missing .h file
This commit was SVN r6744.
2005-08-05 10:30:47 +00:00
Brian Barrett
16e531e373 * fix some bad error messages to actually be useful
This commit was SVN r6741.
2005-08-04 19:28:59 +00:00
Brian Barrett
18d09c14a7 * always include sys/ioctl.h for now. Needs to be protected by header check,
but this will be good enough for Linux and OS X and I don't want to change
  configure.ac mid-day for the other platforms

This commit was SVN r6740.
2005-08-04 18:48:36 +00:00
Jeff Squyres
22133635e8 Move common to the top
This commit was SVN r6738.
2005-08-04 18:06:22 +00:00
Brian Barrett
20d61b4599 * If rdma frag doesn't complete successfully on the receiving end, don't
call the cbfunc, since it's NULL.  The sending side will do the
  "right thing"

This commit was SVN r6735.
2005-08-04 15:45:31 +00:00
Brian Barrett
ab73cc0487 * minor diagnostic printf that should have been in last commit (doh!)
This commit was SVN r6734.
2005-08-04 15:43:50 +00:00
Brian Barrett
a80b00ab5e * Don't change size of user frag - it's not needed, and causes the frag
to never be returned to the free list

This commit was SVN r6733.
2005-08-04 15:43:13 +00:00
Brian Barrett
9cfa6bba6a * If a message isn't successfully sent, reduce the pending sends counter, as
the message is no longer pending
* Try to push out new messages whenever we finish a send, whether it
   worked or not.  Means that in the case where the other side has too
  many sends pending, we'll constantly retry one (and only one, once the
  pending number is reached) message until goodness returns
* Make some warnings only happen in verbose case, as they are mainly
  diagnostics

This commit was SVN r6732.
2005-08-04 15:41:11 +00:00
Jeff Squyres
b2cfedf805 Add copyright headers, ompi_config.h, and stdio.h.
This commit was SVN r6729.
2005-08-04 12:06:08 +00:00
Brian Barrett
26adbfe713 checkpoint to move back to RS
* remove dead code
* add some debugging code

This commit was SVN r6725.
2005-08-03 20:21:23 +00:00
Brian Barrett
6c37ad4471 * more components to ignore on RS
* fix comment

This commit was SVN r6724.
2005-08-03 16:08:27 +00:00
Brian Barrett
67f96f7b46 * convert to new param registration code
* Fix RDMA book keeping

This commit was SVN r6723.
2005-08-03 16:02:02 +00:00
Brian Barrett
3867d59cf1 * Look at stdout instead of stdin for determining whether output is going
to a tty or not.  Now you can do something like:

     ompi_info -all | grep btl_portals

  and get the full line for each btl_portals parameter.
* For the case where stdout is a tty, we have my current nomination for
  Today's Useless OMPI Feature.  Autodetect the width of the terminal, so
  people with really wide terminals will get less wrapping

This commit was SVN r6722.
2005-08-03 14:48:48 +00:00
Jeff Squyres
11140e9cb8 We must eliminate and stamp out all forms of redundancy, however they
may appear.

(remove *error.h file from Makefile.am -- a cut-n-paste error that has
propagated to a surprising number of directories ;-) )

This commit was SVN r6721.
2005-08-03 14:47:04 +00:00
Brian Barrett
eb2748130b * don't build TCP component if we don't have IP sockets :)
This commit was SVN r6716.
2005-08-02 20:06:34 +00:00
Rainer Keller
f5f96f424d - Use for-loop
- Minor heck for stride != 1
- indenting

This commit was SVN r6715.
2005-08-02 19:56:18 +00:00
Brian Barrett
24116a3935 * fix up a bunch of threading issues when progress and/or mpi threads
are enabled.  Mostly just ADD32 -> ADD_SIZE_T issues and naming of
  variables in THREAD_{LOCK,UNLOCK}

This commit was SVN r6706.
2005-08-02 17:36:01 +00:00
Brian Barrett
4a748d62ae * add some missing header files for OS X
This commit was SVN r6702.
2005-08-02 14:59:50 +00:00
Tim Woodall
2214f0502d - first cut at tcp btl (working but not optimal)
- reworked btl error logging macros

This commit was SVN r6701.
2005-08-02 13:20:50 +00:00
Jeff Squyres
4c1dd716c7 Change and add new features to the MCA parameter system:
- new preferred API calls for registering MCA parameters are
  mca_base_param_reg_{int|string} and
  mca_base_param_reg_{int|string}_name.
- See opal/mca/base/mca_base_param.h for docs on new calls.  
- Can now register and lookup a value at the same time.
- Can now mark a parameter "read only" at registration time
- Can now mark a parameter "internal" at registration time
- Can now associate a help message with the parameter at registration
  time; displayed in the ompi_info output.

The old API calls are still available for backwards compatibility
(mca_base_param_register_{int|string}.  They will eventually be
removed -- all developers are encouraged to use the new APIs from here
on out and replace any old calls with the new API.

Some params were also renamed -- the previous convention of using
"base_" as a prefix for any param that was not associated with a
component is henceforth deprecated.  Instead, use one of the following
prefixes:

mca: for anything in the MCA base itself
opal: for anything in OPAL
orte: for anything in ORTE
mpi: for anything in OMPI

This commit was SVN r6698.
2005-08-01 22:38:17 +00:00
Tim Woodall
2324f36065 call ob1 progress rather than endpoint - as it may not have one
This commit was SVN r6696.
2005-08-01 22:30:25 +00:00
George Bosilca
ea0cf322f3 Taking care of the source pointer.
This commit was SVN r6691.
2005-08-01 17:09:46 +00:00
George Bosilca
f8ccce7503 One step further.
This commit was SVN r6690.
2005-08-01 17:08:59 +00:00
Brian Barrett
41f7bb3a2a * undo removing of .ompi_unignore file (there is actually a .ompi_ignore
in this directory)

This commit was SVN r6688.
2005-07-29 23:56:48 +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
Brian Barrett
6528ee4692 * remove some useless printfs
This commit was SVN r6683.
2005-07-29 00:23:28 +00:00
George Bosilca
8e1f169ffd When we copy a convertor we should copy it's flags too. Otherwise the informations inside will
not match the flags (uninitialized).

This commit was SVN r6681.
2005-07-29 00:17:02 +00:00
George Bosilca
8e0d8a0e99 The datatype should be initialized as soon as possible. Inside we detect the local architecture and
create the local convertor. They will get used on the ompi_proc_init.

This commit was SVN r6680.
2005-07-29 00:15:26 +00:00
George Bosilca
dc2a3d7917 We dont have a .ompi_ignore so I dont see why we have a .ompi_unignore.
This commit was SVN r6679.
2005-07-29 00:14:18 +00:00
George Bosilca
10d95144b6 Add a global local architecture. It is required by the proc.c file as all new procs by default
have the same architecture as the current one.

This commit was SVN r6678.
2005-07-29 00:12:33 +00:00
Brian Barrett
170777d399 * exit on error, not success...
This commit was SVN r6677.
2005-07-29 00:07:52 +00:00
Brian Barrett
cbf04e3d3f * if the frag isn't going to go, reduce the pending frags count, don't
increase it

This commit was SVN r6675.
2005-07-28 22:29:05 +00:00
Jeff Squyres
6e1110188b Allow coll v1 component authors to be lazy in their module_init
functions  (i.e., just return comm->c_coll_selected_module).

This commit was SVN r6668.
2005-07-28 20:31:26 +00:00
George Bosilca
c8bc529df4 The second cut of MX ... still not working yet
This commit was SVN r6666.
2005-07-28 19:53:27 +00:00
Tim Woodall
b2ec71a609 correct for case where eager limit is greater than min_rdma_size
This commit was SVN r6663.
2005-07-28 19:35:47 +00:00
Brian Barrett
5e75cb2495 * properly set unlink thresholds - START/END combined are 1 event
This commit was SVN r6662.
2005-07-28 19:28:04 +00:00
Brian Barrett
7441dfc4c3 fix some printfs
This commit was SVN r6660.
2005-07-28 19:15:07 +00:00
Brian Barrett
8a56cd567f * make poll time 0 so that our latency isn't way too high
* learn to spell...

This commit was SVN r6659.
2005-07-28 18:48:30 +00:00
Brian Barrett
93671ab150 * remove ompi_{ignore,unignire} files
This commit was SVN r6658.
2005-07-28 18:46:46 +00:00
Brian Barrett
05720c099f * use catamount header file
* fix some printfs

This commit was SVN r6654.
2005-07-28 17:09:23 +00:00
Brian Barrett
6cf88caeb4 * remove some unneeded printfs in Portals btl
* add some svn:ignores

This commit was SVN r6653.
2005-07-28 17:04:52 +00:00
Brian Barrett
3f09d5f2a4 * make btl open be safe to call multiple times (btl close already was)
* add btl back into ompi_info.  Since it now directly calls the
  open/close, the missing symbol problems Ralph was seeing when ob1 is
  ignored will not occur.

This commit was SVN r6652.
2005-07-28 16:31:29 +00:00
Rainer Keller
42f23932e0 In part revert 6647, btl_sm_fifo was in repos,
but not in Makefile.am

This commit was SVN r6651.
2005-07-28 16:25:09 +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
Rainer Keller
29465f0f28 There is no file btl_sm_fifo.h
This commit was SVN r6647.
2005-07-28 15:47:46 +00:00
Galen Shipman
168274db45 Call progress on send schedule so that prepare_src can run if the rdma ack
lands between sending fragments up to rdma_offset. 

This commit was SVN r6646.
2005-07-28 15:38:31 +00:00
Rainer Keller
6b7eb3b2d9 Add btl_sm_endpoint.h
This commit was SVN r6644.
2005-07-28 15:05:16 +00:00
Brian Barrett
052b4d4da4 * only give warning about removing -pedantic and -Wall if we are actually
going to build the component

This commit was SVN r6641.
2005-07-28 06:05:27 +00:00
Jeff Squyres
a7a9196350 There is no such file btl_gm_error.h.
This commit was SVN r6636.
2005-07-28 00:08:36 +00:00
George Bosilca
801037ed6c Migrating MX PTL to the new configure sub-system (shared by both MX BTL and MX PTL).
This commit was SVN r6634.
2005-07-27 23:39:56 +00:00
George Bosilca
94fe5e6ac8 MX BTL use the new configure sub-system.
This commit was SVN r6633.
2005-07-27 23:38:31 +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
George Bosilca
9603996a31 Self BTL is working just fine.
This commit was SVN r6624.
2005-07-27 21:46:44 +00:00
Rainer Keller
b9e092a9db There is no btl_mx_error.h, its not included anywhere.
This commit was SVN r6623.
2005-07-27 20:48:19 +00:00
George Bosilca
e1b3758fa5 The first cut for he MX BTL.
This commit was SVN r6621.
2005-07-27 19:46:36 +00:00
Rainer Keller
08d1ab584a See comment in file.
We need to reset the empty-request to the MPI_REQUEST_NULL.

This commit was SVN r6620.
2005-07-27 17:25:12 +00:00
Galen Shipman
758e572ddb Use r_key for prepare_dst
This commit was SVN r6617.
2005-07-27 15:19:08 +00:00
Tim Woodall
a3dbe7687c enable btls
This commit was SVN r6616.
2005-07-27 15:01:05 +00:00
Galen Shipman
aa749499f8 Don't need to remove pedantic flags for openib.
This commit was SVN r6615.
2005-07-27 14:59:41 +00:00
Galen Shipman
115ef95c88 remove ompi_ignore files
add configure.m4 to openib btl and mpool. 

This commit was SVN r6613.
2005-07-27 13:42:37 +00:00
Galen Shipman
f3843bee55 Updated openib btl and mpool to use configure.m4
removed ompi_ignore files from openib btl and mpool. 

This commit was SVN r6612.
2005-07-27 03:38:25 +00:00
Rainer Keller
15c4ae3391 Fix for buglet #1423.
Any non-blocking P2P function should set the request to something else
then MPI_REQUEST_NULL, when passed a source/dest of MPI_PROC_NULL.

Introduce a new ompi_request_empty, which returns the
MPI_SOURCE=MPI_PROC_NULL, MPI_TAG=MPI_ANY_TAG, count=0 as specified by
the MPI-standard.

This commit was SVN r6611.
2005-07-27 01:00:02 +00:00
Brian Barrett
9a83910165 * Change Myrinet/gm btl and mpool to use configure.m4 instead of
configure.stub

This commit was SVN r6608.
2005-07-26 21:56:36 +00:00
Craig E Rasmussen
169d9a33fb Moved MPI_ADDRESS_KIND calculation to configure.ac so that it can go in mpif.h
This commit was SVN r6607.
2005-07-26 17:35:41 +00:00
Galen Shipman
9437cea964 Added support for shared receive queue, note that this is a run-time option
using OMPI_MCA_btl_mvapi_use_srq=1  and is disabled by default. 

This commit was SVN r6602.
2005-07-25 21:15:41 +00:00
Galen Shipman
e33a8205e8 Bugfix and use INLINE flag on send.
This commit was SVN r6600.
2005-07-25 14:57:33 +00:00
Tim Woodall
990c466a9f tuning
This commit was SVN r6595.
2005-07-22 21:33:16 +00:00
Galen Shipman
4c119def85 Misc fixes..
This commit was SVN r6583.
2005-07-21 20:26:17 +00:00
Brian Barrett
a4497238ad * per conversation with Tim, completely drain the Portals event queues each
time through component_progress()

This commit was SVN r6576.
2005-07-21 16:09:13 +00:00
Brian Barrett
0ee12467d6 * implement RDMA put
* remove the recv fragment code, since it really isn't needed
* handle memory descriptor binding a bit more sanely, and use
  thresholds so that Portals does the unlink for us, when it feels
  like it.

This commit was SVN r6575.
2005-07-21 16:06:46 +00:00
Brian Barrett
2faa0d179e * rename a bunch of constants to properly follow prefix rule
* change poll time from 10ms to 0ms.  bad brian
* change eager / min send limits to make ob1 a bit happier

This commit was SVN r6573.
2005-07-21 13:31:52 +00:00
Brian Barrett
ee3530b4bf * add me to gm unignores
This commit was SVN r6572.
2005-07-21 12:37:18 +00:00
Tim Woodall
2a392b9fca removed debug
This commit was SVN r6571.
2005-07-20 21:13:55 +00:00
Tim Woodall
3553333ef8 removed debug
This commit was SVN r6570.
2005-07-20 21:13:24 +00:00
Galen Shipman
fd969ac833 More code cleanup.. Also converted post receive requests to macros..
This commit was SVN r6566.
2005-07-20 17:43:31 +00:00
Galen Shipman
946402b980 More openib cleanup.. still note ready for public consumption ;-)
This commit was SVN r6565.
2005-07-20 15:17:18 +00:00
Brian Barrett
db4d993228 more code cleanup:
* change all the opal_output_verbose calls in the critical path to
    OPAL_OUTPUT_VERBOSE so that they are pre-processed out if debugging
    is not enabled
  * remove stub code

This commit was SVN r6564.
2005-07-20 15:02:56 +00:00
Brian Barrett
3ac83138c2 No real functionality changes, just a bunch of changes to make variable
names and the like more consistent throughout the code

This commit was SVN r6563.
2005-07-20 14:36:52 +00:00
George Bosilca
404d9ea990 One less compilation warning.
This commit was SVN r6561.
2005-07-20 06:48:11 +00:00
George Bosilca
3b52a31e1f Make some compilers quiet. Otherwise they complain about uninitialized variables even if
the logic inside prevent an execution path where they can be used uninitialized.

This commit was SVN r6560.
2005-07-20 06:47:10 +00:00
George Bosilca
d0eee91610 Change from opal_hash_table_[get|set|remove]_proc -> orte_hash_table_[get|set|remove]_proc
This commit was SVN r6558.
2005-07-20 06:42:33 +00:00
Brian Barrett
cec83a8aba * add me to ompi_unignore
This commit was SVN r6557.
2005-07-20 03:29:08 +00:00
Brian Barrett
c95eacdff7 * add mode for utcp compat code where modex is not used. Instead, use the
"run-time" api for the reference implementation.
* Make the non-modex utcp and redstorm compat code do the same things in
  the same order

This commit was SVN r6556.
2005-07-20 02:49:48 +00:00
Brian Barrett
f7efce87d8 * need to check with Tim, but appears for a received fragment, everything
associated with the descriptor is ours again once the callback function
  returns.  Make it so - probably can optimize out some of the stuff I
  did when I mistakenly thought the descriptor free() was called on the
  passed descriptor
* Fix some dumb accounting errors with MD usage for unexpected receives

This commit was SVN r6555.
2005-07-20 01:24:43 +00:00
Galen Shipman
2f67ab82bb Working version of openib btl ;-)
Fixed receive descriptor counts that limited mvapi and openib to 2 procs.                                                   
Begin porting error messages to use the BTL_ERROR macro. 

This commit was SVN r6554.
2005-07-19 21:04:22 +00:00
Jeff Squyres
f09fb6fff4 Update Makefile.am's to get common sm component for symbol resolution.
This commit was SVN r6551.
2005-07-19 14:51:23 +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
Tim Woodall
14ba3322e9 cleanup
This commit was SVN r6546.
2005-07-18 21:22:55 +00:00
Tim Woodall
efc5869b6b - correct typos
- change default buffering to support intel tests

This commit was SVN r6544.
2005-07-18 20:55:42 +00:00
Tim Woodall
0423d414ef - correction for sync send
- now passing all of the intel p2p list

This commit was SVN r6543.
2005-07-18 18:54:25 +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
Jeff Squyres
fee0cf5f29 Quick (and temporary fix) for those getting missing symbols. Real fix
coming shortly (Monday or Tuesday).

This commit was SVN r6538.
2005-07-17 11:21:52 +00:00
George Bosilca
a06f555707 MX is up running again. Several modifications:
- we modex send and receive a structure containing the nid id and the endpoint id. On the
  remote node we can recompose the endpoint_addr via mx_connect.
- accept several retry to mx_connect (up to 5 seconds ... soon to be a MCA param).
- correctly construct/destruct the internal objects.
- some others minor changes.

This commit was SVN r6535.
2005-07-15 23:38:38 +00:00
Jeff Squyres
657d10187e Remove a little more kurft.
This commit was SVN r6534.
2005-07-15 21:51:07 +00:00
Galen Shipman
85cdef7abd correct leave_pinned bug
This commit was SVN r6533.
2005-07-15 21:08:36 +00:00
Tim Woodall
025dcfa80b dont try and pack zero byte message
This commit was SVN r6532.
2005-07-15 20:58:11 +00:00
Tim Woodall
7fa40e84ae fix test against max send tokens
This commit was SVN r6531.
2005-07-15 20:56:29 +00:00
Jeff Squyres
f41e4149fa - Add new mpool base function: lookup by module name. This allows
multiple components to share a single mpool module (e.g., the
  ptl/btl and coll sm components).
- Re-tool the ptl, btl, and coll sm components to first look for the
  target mpool module, and if they don't find it, to create it.
- coll sm component now correctly identifies when it is supposed to
  run or not (i.e., if all the processes in the communicator are on
  the same host).  Now we just need to fill in some algorithms.  :-)

This commit was SVN r6530.
2005-07-15 20:01:35 +00:00
Tim Woodall
3ca9536695 yet another change to sequence logic
This commit was SVN r6528.
2005-07-15 18:34:37 +00:00
George Bosilca
3b2d6826e8 MX is working again. It still require a patched version of Mx, but hopefully this patch
will be included on the next version of the MX software.

This commit was SVN r6527.
2005-07-15 18:03:28 +00:00
Tim Woodall
612734f395 set request status on start
This commit was SVN r6526.
2005-07-15 16:17:33 +00:00
Galen Shipman
5af3cc8045 carryover mvapi mpool changes to openib
This commit was SVN r6525.
2005-07-15 16:05:05 +00:00
Galen Shipman
723a7b56ef Removed allocator from mpool_mvapi, moved is_leave_pinned to mpool_base,
corrected free and realloc in mpool. Added alloc_base to
mca_mpool_base_registration_t to be used as the actual alloc'd base address,
which may be different from the reported base address due to page allignment. 

This commit was SVN r6524.
2005-07-15 15:52:13 +00:00
Jeff Squyres
99ebaacb54 Use new OMPI_PROC_FLAG_LOCAL to determine if all procs in the
communicator are on the same node or not.

This commit was SVN r6523.
2005-07-15 15:23:19 +00:00
Jeff Squyres
84bc5214e9 Convert sm btl to use new OMPI_PROC_FLAG_LOCAL instead of the modex.
This commit was SVN r6522.
2005-07-15 15:22:41 +00:00
Jeff Squyres
51f8cd1442 Convert sm ptl to use the new OMPI_PROC_FLAG_LOCAL flag on the proc;
no longer use modex.

This commit was SVN r6521.
2005-07-15 15:22:15 +00:00
Galen Shipman
b75560796c Fix up error handling in openib.. Added a simple debug test for memory
registration.. 

This commit was SVN r6520.
2005-07-15 15:13:19 +00:00
Edgar Gabriel
213be28613 minor fixes to make the trunk compile, if ompi has been configured with the --enable-mpi2-one-sided option
This commit was SVN r6518.
2005-07-15 13:53:10 +00:00
Jeff Squyres
f57be9425b Fix some comments to be more accurate.
This commit was SVN r6517.
2005-07-15 13:40:21 +00:00
Edgar Gabriel
ed36e40646 stupid comma issue
This commit was SVN r6516.
2005-07-15 12:57:09 +00:00
Edgar Gabriel
3d1c10b09b make sure, that the value for TYPE_ATTR is identical, independent of the definition of OMPI_WANT_MPI2_ONE_SIDED
This commit was SVN r6514.
2005-07-15 11:54:38 +00:00
Brian Barrett
fe21bc111a sends seem to work as well as for sm - still seeing segfaults in various
IBM tests, but see same segfaults / assets in sm btl.

* Add prepare_src implementation so that we can send multiple fragments of
  large messages
* Add queuing of sends if either there are too many outstanding sends
  (we have to limit this so that we don't have more sends pending than
  we could get acks for) or if we get an ack with a 0 byte mlength,
  which means the remote side dropped the message on us.

Still need to valgrind to make sure I'm not leaking resources

This commit was SVN r6508.
2005-07-15 01:43:47 +00:00
Jeff Squyres
94160da4c0 - A bunch of little pedantic / style fixes
- Change ompi_proc_world() to only return the procs in this job (as
  opposed to all of them)
- Add a subscription that fires during MPI_INIT (stg1) for figuring
  out which procs are on my local node.  Need to figure out what to do
  in the esoteric cases -- but the obvious one (Red Storm), where
  subscriptions are never fired, is ok, because by definition, no
  other procs will be on my node, so their default value (not on my
  node) is ok.
  --> Need to have RHC check this code; it seems to work, but I think
      I'm getting too much data back from the subscription.
- End result is that any proc that is on my node will have its
  OMPI_PROC_FLAG_LOCAL bit set on its proc->proc_flags field.
- Added/corrected a few comments in proc.h.

This commit was SVN r6507.
2005-07-14 22:43:01 +00:00
Tim Woodall
088bd37454 added leave_pinned flag to base registration
This commit was SVN r6506.
2005-07-14 22:28:00 +00:00
Tim Woodall
70fb6fbe21 maintain mru list of registrations for leave pinned option
This commit was SVN r6505.
2005-07-14 22:27:11 +00:00
George Bosilca
10a8e46f99 If I want the default values then I have to pick them up from the req_base !!!
This commit was SVN r6504.
2005-07-14 22:06:27 +00:00
George Bosilca
a7adea8b8f As at the end of the start function for the bsend request we replace the default convertor by
one where the data is already packed, we have to recreate the default one in the case we reuse
the initial request.

This commit was SVN r6503.
2005-07-14 22:03:58 +00:00
George Bosilca
4304115e0a Activate the assert as now the ddt engine handle correctly the ref count on the datatypes.
This commit was SVN r6502.
2005-07-14 22:02:43 +00:00
Galen Shipman
7e8c9289f3 Commented out unused frag variables... will remove completely soon
This commit was SVN r6501.
2005-07-14 21:52:55 +00:00
Tim Woodall
27e8f00fc0 decrease pipeline depth for rdma case
This commit was SVN r6500.
2005-07-14 21:28:17 +00:00
Tim Woodall
20917f8db0 implemented priority
This commit was SVN r6499.
2005-07-14 21:19:16 +00:00
George Bosilca
1dfbd0e296 For contiguous datatype set the type in the stack and compute the displacement depending
on the basic type where we have to start.

This commit was SVN r6497.
2005-07-14 19:27:58 +00:00
Tim Woodall
76e287a29a George - the change you made breaks the btls - as they
think the data is contiguous - and the convertor routine
you've changed this to doesn't support returning the correct
offset into the user buffer when a NULL address is provided
in the iovec array

This commit was SVN r6496.
2005-07-14 19:21:07 +00:00
George Bosilca
269a939a09 Do not allow the macro to execute if there is nothing to do.
Correctly compute the next displacement, if we stop in the middle of a conversion.

This commit was SVN r6495.
2005-07-14 19:16:25 +00:00
Tim Woodall
c4bc9aa740 return a NULL registration
This commit was SVN r6494.
2005-07-14 19:10:46 +00:00
Tim Woodall
e163943eac check for null registration
This commit was SVN r6493.
2005-07-14 19:07:01 +00:00
Tim Woodall
d454cb290c check for null registration
correct count of registered modules

This commit was SVN r6492.
2005-07-14 19:06:46 +00:00
Brian Barrett
2719a1c1d6 * rename function to match utcp version
This commit was SVN r6491.
2005-07-14 18:08:15 +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
Galen Shipman
a8f6ed7a51 Moved runtime params out of the module and into the component.
This commit was SVN r6484.
2005-07-14 14:31:23 +00:00
Brian Barrett
e4168a0fcb * another place I need another username
This commit was SVN r6483.
2005-07-14 13:44:12 +00:00
Jeff Squyres
5170e077e0 Fixes to the sm coll component after the directory re-org.
This commit was SVN r6481.
2005-07-14 13:04:27 +00:00
George Bosilca
47f3d1f5be Dont mix declarations and initializations.
This commit was SVN r6480.
2005-07-14 06:44:52 +00:00
Brian Barrett
68b91e85ed * add checks for the hton and ntoh functions, since they don't exist on
Red Storm.  Add stub functions to ompi_config_bottom.h when they are
  around
* Add protection for a bunch of #include <netinet/in.h>s
* Fix up the Portals BTL so that it compiles on Red Storm and has the
  right mojo for initialization on Red Storm
* Add some important comments to ompi_check_package and mvapi configures
* Add support for platforms without getpwuid() (aka, Red Storm). 

This commit was SVN r6478.
2005-07-14 04:11:59 +00:00
Jeff Squyres
3d69646177 This PTL is long out of date and doesn't even compile. If we ever
need it back, it can be pulled out of the SVN history.

This commit was SVN r6477.
2005-07-14 02:24:07 +00:00
George Bosilca
e9a271c54a Get rid off all useless variables and PTL members.
This commit was SVN r6471.
2005-07-13 22:24:28 +00:00
George Bosilca
3edb6ad903 Do not forget to add the dependencies to the file compiled with the additional flag.
This commit was SVN r6470.
2005-07-13 21:58:13 +00:00
Tim Woodall
262cda14cf attempt to move posting of buffers out of critical path
This commit was SVN r6469.
2005-07-13 21:39:41 +00:00
George Bosilca
77e4e5d1d4 The new pack function should get intensively tested. It should be the default one use
all the time. There is a performance problem (it's a lot slower than the optimized versions)
but otherwise it will never get tested intensively.

This commit was SVN r6467.
2005-07-13 21:29:14 +00:00
George Bosilca
b01c7ee66b The flags should be set to zero when we allocate the convertor.
This commit was SVN r6466.
2005-07-13 21:27:54 +00:00
George Bosilca
8641a794f8 They get freed in just one place. It's useless to have a macro for that.
This commit was SVN r6465.
2005-07-13 21:27:12 +00:00