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

218 Коммитов

Автор SHA1 Сообщение Дата
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
Galen Shipman
dcbda13a72 Various bug fixes..
This commit was SVN r6464.
2005-07-13 21:13:30 +00:00
George Bosilca
e67650d54f Activate the UNIQ PML by default and give it the priority 0. It's still less than the TEG
PML but you can increase it if you add "pml_uniq_priority = 75" in your mca-params.conf
file.

This commit was SVN r6463.
2005-07-13 21:08:09 +00:00
George Bosilca
1cca889bbe Move the compilation of SM to the "new" model. No Makefile in the src, everything get compiled
directly in the sm directory.

This commit was SVN r6461.
2005-07-13 16:17:44 +00:00
Brian Barrett
17480a5965 * I've sprung yet another username, for the sandia machines
This commit was SVN r6460.
2005-07-13 16:15:32 +00:00
Brian Barrett
4a12652246 * fix bad typo in last commit :(
This commit was SVN r6455.
2005-07-13 04:16:56 +00:00
Brian Barrett
4d580fa706 * disable TCP ptl and oob components if there is no TCP support (look at
sockaddr_in - seems to be a good indicator)
* disable util/if code if no inet devices (again, no sockaddr_in)
* add enable/disable flag to disable stacktrace pretty-print code
  (defaults to enabled).  Seems there's something funky going on with
  the preprocessor on Red Storm that was causing problems - this was
  the easiest fix
* clean up a bunch of the configure.m4 files to remove bogus comments,
   properly comment them, fix the dumb logic for happy/unhappy
* Create a macro for testing both header and library for a package, 
  since we seem to do this kind of test quite often.  Handles the
  -I and -L search paths properly (including stripping out /usr and
  /usr/local if not needed)
* Converted mvapi components to configure.m4, using the nice new
  ompi_check_package macro (above)

This commit was SVN r6454.
2005-07-13 04:16:03 +00:00
Brian Barrett
586918853c * Turn thread support on by default, but disable both mpi and progress
threads (basically, same as before, but we now link the right thread
  libraries). 
* Add disable-io-romio flag to disable compiling ROMIO
* Migrathe mvapi btl from configure.stub to configure.m4

This commit was SVN r6453.
2005-07-13 01:07:31 +00:00
Galen Shipman
c1c4a5efba Compiling checkin of openib btl and mpool..
This commit was SVN r6452.
2005-07-13 00:17:08 +00:00
George Bosilca
7ca76f83aa pedantic ...
This commit was SVN r6451.
2005-07-12 21:53:47 +00:00
George Bosilca
02828d3c97 Finally I get the time to implement a correct reference count for datatypes. The problem
was that some datatypes can be used in order to create additional datatypes. In such cases
they should not get destroyed otherwise the user will not be able to retrieve how a 
datatype was created. So I decide to never increase the reference count for any predefined
datatypes (as we already know they will never get destroyed, except on finalize). For
the others, every time a datatype is user by another one I increase the reference count.
When I destroy a datatype, I parse (the internal structure args) and release one ref count
on all not predefined datatypes used by this one. Thus the datatypes get cleaned. The main
problem with this approach is the recursivity as this function can trigger another call
to itself (but I dont think it will be an issue).

This commit was SVN r6450.
2005-07-12 21:52:30 +00:00
Galen Shipman
d7bdc46ac9 compile error and warining fixes for openib..
This commit was SVN r6449.
2005-07-12 21:49:30 +00:00
George Bosilca
c560a296d1 Do not forget to release the temporary argv list when we're done.
This commit was SVN r6448.
2005-07-12 20:39:16 +00:00
George Bosilca
a59216d504 Do not forget to release the convertor when the proc get destroyed.
This commit was SVN r6447.
2005-07-12 20:25:47 +00:00
George Bosilca
0b0c4c17a5 If the user explicitly specify a PML then print out it's name in the case where the PML was unable to initialize correctly.
This commit was SVN r6445.
2005-07-12 19:30:51 +00:00
Galen Shipman
ed1da1a7c8 verbs.h not vapi.h --- doh
This commit was SVN r6444.
2005-07-12 19:07:32 +00:00
Galen Shipman
ac527bdc78 Modified btl names as appropriate..
This commit was SVN r6443.
2005-07-12 19:02:39 +00:00
Galen Shipman
2a2bb0c1e5 Modified the openib configure.stub files to search for openib libs in the
appropriate spot and also added a check for the libsysfs library required by openmpi. Modified the mvapi configure.stub to use AC_TRY_LINK for
pthreads. 

This commit was SVN r6441.
2005-07-12 18:06:54 +00:00
Josh Hursey
048d5c1415 Added some userlevel error checking, and messaging.
This commit was SVN r6440.
2005-07-12 18:06:31 +00:00
Brian Barrett
29b6112358 * remove module flag from linking romio - it should be in the romio component
(which it is) and not romio itself
* Work around dark, evil linker voodoo that prevented building both shared
  and static libraries on OS X.  The global variables in ad_init.c were
  not initialized, and so were marked as tentative definitions, which caused
  much pain for the linker later on.  Initializing them makes them
  actual definitions and the problem goes away.  I hate linkers.

This commit was SVN r6439.
2005-07-12 18:06:15 +00:00
George Bosilca
032fef3eac Respect the user requested PTLs. By default all PTLs can be loaded. If the include list is
present then all PTL's not in the include list are marked as not available. If the exclude
list is present then all PTLs in this list are marked as not available.

This commit was SVN r6438.
2005-07-12 16:19:35 +00:00
Galen Shipman
4286dae71b Added the appropriate ignore and unignore files...
This commit was SVN r6436.
2005-07-12 13:39:59 +00:00
Galen Shipman
454fdff824 Initial commit of changes to the mvapi btl to the openib btl. Still need to
work on the configure.stub to correctly locate the ib libraries. 

This commit was SVN r6435.
2005-07-12 13:38:54 +00:00
George Bosilca
6aa956241f Solve the issues when several PML are available. The main problem here come from the fact that an PML
is a lot more difficult than a PTL, and it can adapt it's behavior to the level of threading required
by the user. In this case the behavior is the priorit of the PML. Therefore this information is never
availale before the init function (of the PML) is called. So I try to keep nearly the same structure
as it was before, with one change. When a PML get initialized it does not necessarily means it has been
selected, so it does not means it has to create all it's internal structures (and select the PTL and
all this stuff). They can all be done later, when a PML knows that it definitively get selected
(when the enable function is called with the argument set to true). Thus, in the case of a PML close
one have to check if the PML has been selected or not before trying to clean up the internals.

I had to change the MPI_Init function to allow the PML to be enabled before we start adding procs inside.

This commit was SVN r6434.
2005-07-12 05:40:56 +00:00
George Bosilca
59d886e6c7 pedantic ...
This commit was SVN r6433.
2005-07-12 05:31:30 +00:00
George Bosilca
3551f97329 Give a change to all datatype to get an optimized version. Even the contiguous ones ...
This commit was SVN r6432.
2005-07-12 05:31:12 +00:00
George Bosilca
a4548c9e89 This optimization require that the true extent of the data is equal to the size of the data. Not the extent.
This commit was SVN r6431.
2005-07-12 05:30:35 +00:00
George Bosilca
07ad024ed3 OMPI_ARCH_LONGLONGISxx is a mask so we can get the length of a long long.
This commit was SVN r6430.
2005-07-12 05:29:33 +00:00
George Bosilca
717fa6c34f The ompi_ddt_optimize_short function is local to the datatype engine. Do not export it !
This commit was SVN r6429.
2005-07-12 05:28:39 +00:00
Brian Barrett
22dbdb2d66 * set universe size to be size of comm_world in initial setup. Means that
all required attributes are set even if the trigger never fires (the
  trigger can update the value, if needed.  This is all in MPI_Init, so
  that does not violate the standard)

This commit was SVN r6427.
2005-07-12 02:34:00 +00:00
Brian Barrett
6c9cba5d55 * protect pointer assignment, as registration will be NULL if special mpools
aren't used

This commit was SVN r6426.
2005-07-12 02:00:42 +00:00
Brian Barrett
aca3abac5d * checkpoint for the evening
This commit was SVN r6423.
2005-07-11 21:00:08 +00:00