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

764 Коммитов

Автор SHA1 Сообщение Дата
George Bosilca
418f1b8986 The module name is ompi_osc_pt2pt_module_t not ompi_osc_p2p_module_t.
This commit was SVN r8843.
2006-01-29 18:00:30 +00:00
George Bosilca
9d9fc78d0e Like in the PML the path to the statically included file have to start
with the sub-project name.

This commit was SVN r8842.
2006-01-29 17:33:45 +00:00
Brian Barrett
d7056e6e2a remove some unneeded debugging output
This commit was SVN r8841.
2006-01-28 19:59:54 +00:00
Brian Barrett
05c9de058c * add missing header include
This commit was SVN r8837.
2006-01-28 16:09:35 +00:00
Brian Barrett
b1d2424013 Merge in present work on the MPI-2 onesided chapter. The current code is not
complete, but stable enough that it will have no impact on general development,
so into the trunk it goes.  Changes in this commit include:

 - Remove the --with option for disabling MPI-2 onesided support.  It
   complicated code, and has no real reason for existing
 - add a framework osc (OneSided Communication) for encapsulating
   all the MPI-2 onesided functionality
 - Modify the MPI interface functions for the MPI-2 onesided chapter
   to properly call the underlying framework and do the required
   error checking
 - Created an osc component pt2pt, which is layered over the BML/BTL
   for communication (although it also uses the PML for long message
   transfers).  Currently, all support functions, all communication
   functions (Put, Get, Accumulate), and the Fence synchronization
   function are implemented.  The PWSC active synchronization
   functions and Lock/Unlock passive synchronization functions are
   still not implemented

This commit was SVN r8836.
2006-01-28 15:38:37 +00:00
Rainer Keller
60c2ae768b - Change the spacing preventing finding the struct from script.
This commit was SVN r8819.
2006-01-26 11:55:00 +00:00
George Bosilca
a2f31b2bf6 Use the MCA_PML_BASE_REQUEST_MPI_COMPLETE macro to set the completed state to true.
Add back the mutex protection around the size computations as they are not yet atomic
operations.

This commit was SVN r8812.
2006-01-25 23:17:17 +00:00
George Bosilca
58c9c82dab Add a macro to mark the MPI request as completed (MCA_PML_BASE_REQUEST_MPI_COMPLETE) and
broadcast the request condition if required. This macro should be called with the request's
mutex locked.

This commit was SVN r8811.
2006-01-25 23:15:36 +00:00
George Bosilca
0f1c6d79e8 Make the MVAPI BTL thread safe again. The problem was a double locking on the endpoint mutex.
It's still not very clean as we still lock the mvapi_btl mutex inside a critical section
protected by the endpoint mutex ...

This commit was SVN r8810.
2006-01-25 23:14:06 +00:00
Galen Shipman
ddc22d8c7e Use endpoint_lock, not ib_lock (copy paste error from openib btl)
This commit was SVN r8806.
2006-01-25 15:04:37 +00:00
Andrew Friedley
0ff8e47075 Checkpoint for the night:
- Updated copyrights
 - First pass at the uDAPL mpool component looks complete - is it really this easy?

This commit was SVN r8803.
2006-01-25 04:08:08 +00:00
Andrew Friedley
f5f8a1b874 Initial commit of uDAPL mpool component. Just a stripped copy of the GM mpool component right now.
This commit was SVN r8802.
2006-01-25 02:22:50 +00:00
Andrew Friedley
ec995160e6 Checkpoint for switch to mpool work:
- Remove printing of CFLAGS in configure.m4
 - Set MCA_BTL_FLAGS_SEND flag
 - Improved error handling during module initialization
 - Extract the address of each interface with dat_ia_query
 - Start playing around with fragment stuff - probably wrong
 - Misc code cleanup (removal of GM-specific code)

This commit was SVN r8801.
2006-01-25 02:21:34 +00:00
Tim Woodall
51ec050647 port of revised flow control from openib
This commit was SVN r8799.
2006-01-24 23:44:30 +00:00
Tim Woodall
e861158fcd - removed debug code
- removed extraneous memset

This commit was SVN r8798.
2006-01-24 23:38:41 +00:00
Galen Shipman
1e0ea9dd6d Major fixes for the RDMA registration cache (leave_pinned).
This commit fixes issues with HPL runs on node counts > 4. 

This commit was SVN r8793.
2006-01-23 22:51:50 +00:00
George Bosilca
83cd8fac9d Now that the free list are correctly destroyed these tests are useless.
This commit was SVN r8792.
2006-01-23 20:33:40 +00:00
Jeff Squyres
bd2524378a Remove unused variable
This commit was SVN r8784.
2006-01-22 12:20:01 +00:00
Brian Barrett
8b2a285f8f * update reference implementation support to match latest release
This commit was SVN r8783.
2006-01-22 04:56:18 +00:00
Rainer Keller
a437fd3aaf - As with George's r8771, move lock/unlock of ompi_request_lock into the
if-clause, getting rid of local schedule variable.

This commit was SVN r8778.

The following SVN revision numbers were found above:
  r8771 --> open-mpi/ompi@2fadddebc8
2006-01-21 21:02:35 +00:00
Rainer Keller
7442a641ea - Fix locking, not related to the current deadlocks.
This commit was SVN r8777.
2006-01-21 13:43:36 +00:00
George Bosilca
2fadddebc8 Decrease the lock granularity and remove it from the path where we don't need it.
Reorder the code to get rid of some local variables.

This commit was SVN r8771.
2006-01-20 17:19:22 +00:00
George Bosilca
8d26696c06 Remove the local variable that shadow the real one.
This commit was SVN r8763.
2006-01-20 02:39:30 +00:00
George Bosilca
29c80875a8 As requested move back the alloc and return to macros instead of static inlined functions.
This commit was SVN r8762.
2006-01-19 23:58:04 +00:00
George Bosilca
d247436bea Make the opal_atomic happy by using a signed int instead of an unsigned one.
This commit was SVN r8759.
2006-01-19 19:54:51 +00:00
George Bosilca
ee9b31459b The atomic variable should be signed not unsigned.
This commit was SVN r8757.
2006-01-19 18:47:32 +00:00
George Bosilca
317f8bc4d4 Indentation + print the shared memory file name if we fail to create it.
This commit was SVN r8749.
2006-01-19 07:09:44 +00:00
George Bosilca
1e48ab533a Remove some left-around from long time ago ...
This commit was SVN r8748.
2006-01-19 07:08:32 +00:00
George Bosilca
81de5e7a47 Get a meaningful error message on Windows when the shared memory file cannot
be created.

This commit was SVN r8747.
2006-01-19 07:07:47 +00:00
George Bosilca
770d530e83 Same bug as blm.h. I know that this macros are not used right now but I fix them for later ...
This commit was SVN r8742.
2006-01-19 06:48:45 +00:00
George Bosilca
be64d98687 We're thread safe again. The atomic compare-and-swap was not used in the correct way allowing
the descriptors to vanish. The PML was thinking that they are in the btl_cache when they
weren't ... It lead to memory consumption on most environments when compiled with
thread enabled. After modification the latency went down by nearly 0.5 microseconds.

Simple way to trigger the bug: limit the number of maximum items in the free list and run
any communication intensive application (like Netpipe).

This commit was SVN r8741.
2006-01-19 06:45:29 +00:00
Galen Shipman
d657052510 misc cleanup..
This commit was SVN r8731.
2006-01-18 16:20:50 +00:00
Galen Shipman
84a09e4f4e use #if not #ifdef..
This commit was SVN r8720.
2006-01-17 21:07:34 +00:00
Galen Shipman
0c81c0a6ce use ibv_get_device_list if present
(submitted from roland)

This commit was SVN r8712.
2006-01-17 16:23:35 +00:00
Andrew Friedley
5ccab7bcda Checkpoint:
- Move mca_btl_udapl_error/mca_btl_module_init to mca_btl_udapl.c and rename it
 - White space cleanups
 - Free the uDAPL evd and ia handles in mca_btl_udapl_finalize

This commit was SVN r8705.
2006-01-16 21:54:50 +00:00
Brian Barrett
17d2c907fc Some changes to better support cross-compiling OMPI:
- fall back to compile test for windows paffinity component
    when cross compiling
  - fall back to platform guess when checking for threads having
    different pids with pthreads (yes on linux, no elsewhere)
  - pass the proper host, target, and build flags to the
    ROMIO configure script

With these changes, cross-compiling should be possible with the exception
of the Fortran 77 and Fortran 90 bindings.  Fortran 77 can be cross-
compiled if cache values are provided for type sizes and alignment.

This commit was SVN r8702.
2006-01-16 04:00:44 +00:00
Andrew Friedley
a4abe3bdbe Checkpoint:
- Borrow configure.m4 from the mvapi btl.  One of the uDAPL headers emits a
   warning when -pedantic is enabled, so strip it out.
 - Change function check in ompi_check_dapl.m4 from dat_ia_open to
   dat_registry_list_providers.. dat_ia_open wasn't working right
 - Make the references to prepare_dst, put, and get NULL for now
 - Add opal_output() calls in all the udapl interface functions for debugging
 - Add evd_qlen component parameter to control event dispatcher queue length
 - First stab at component_init and module_init
 - Misc cleanups - whitespace, dead code removal
 - Update copyrights to 2006

This commit was SVN r8701.
2006-01-16 03:01:12 +00:00
George Bosilca
d4699037f7 Protect an assert if the endpoint cache is not activated.
This commit was SVN r8695.
2006-01-14 21:10:09 +00:00
George Bosilca
3317bf81ad A better implementation for the TCP endpoint cache + few comments.
This commit was SVN r8692.
2006-01-14 20:21:44 +00:00
Tim Woodall
a584c60dbe re-worked flow control logic to take into account the return
of credits from the peer prior to local completion, so that
we don't overrun the number of send wqes available.

This commit was SVN r8683.
2006-01-12 23:42:44 +00:00
Andrew Friedley
c0bad339af - Use the GM BTL as a template instead, per Tim's suggestion
- Begin adding uDAPL-specific stuff
- Added config/ompi_check_udapl.m4 - hopefully I did this right

This commit was SVN r8681.
2006-01-12 04:05:02 +00:00
Brian Barrett
5fdf753e2d remove unneeded second copy of the PML_CALL macros
This commit was SVN r8668.
2006-01-10 18:44:21 +00:00
Graham Fagg
25375759c3 arrgh. reduce could for very small message sizes and proc counts call a linear function
this was implemented using a chain (tree followed with pipeline) by setting the chain fanout to a factor of size etc but the chain datastructure was fixed in length and if exceeded the topo create returned a null which isn't helpfull in cid next function of comdup...
Anyway two fixes, first we do have a real linear function so changed the decision function and second altered the
topo chain create to force chain fanouts of less than 1 to 1 and fanouts bigger than max to max.
next check in will change chain to dynamically allocd array (reallocable) but we shouldn't ever use a chain fanout for a linear tree anyway. 
(lession must rerun all tests for all data sizes when changing decision functions)

This commit was SVN r8662.
2006-01-08 02:41:09 +00:00
Jeff Squyres
268a5f5716 Ensure that seg is always initialized, even in the return_error case.
This commit was SVN r8646.
2006-01-04 23:01:50 +00:00
Tim Woodall
63d0438991 merge in changes from release branch
This commit was SVN r8637.
2006-01-04 16:34:45 +00:00
George Bosilca
29dd1a6f6b Unmap from map_addr not map_seg.
This commit was SVN r8626.
2005-12-31 16:11:58 +00:00
George Bosilca
68b0ba0f58 We need the copyright ...
This commit was SVN r8625.
2005-12-31 15:51:57 +00:00
George Bosilca
e1fbf7b0df The last commit remove the initialization of map_addr ...
This commit was SVN r8624.
2005-12-31 15:18:58 +00:00
George Bosilca
479d510eaf Use the common SM component to unmap the shared memory file.
This commit was SVN r8623.
2005-12-31 15:07:48 +00:00
George Bosilca
3baf36c6d9 Add the windows implementation or shared memory files.
As the common part is the one that create the shred memory file it seems
logical to make it destroy the file as well. Therefore, the code for
unmapping the file is in a common place.

This commit was SVN r8622.
2005-12-31 15:06:24 +00:00
George Bosilca
228f966798 A little trick to force qsort to order the sm modules in the order we expect.
On some systems (like windows) qsort can modify the order of modules when the
comparaison function return 0. As we expect to have the
mca_btl_sm_add_procs_same_base_addr called before mca_btl_sm_add_procs we have
force the qsort to return the SM modules in the correct order. Giving to the
same_addr module a slightly higher priority solve this problem.

This commit was SVN r8620.
2005-12-31 14:59:53 +00:00
George Bosilca
9457534520 Add full path for the header files.
This commit was SVN r8610.
2005-12-28 19:28:32 +00:00
Jeff Squyres
06b01b3b76 Fix uninitialized variable
This commit was SVN r8605.
2005-12-23 13:02:36 +00:00
Tim Woodall
4ff5316b2d correct copy/paste error
This commit was SVN r8601.
2005-12-22 18:07:46 +00:00
Tim Woodall
5d91c492d6 improve diagnostic error messages
This commit was SVN r8600.
2005-12-22 18:01:47 +00:00
Tim Woodall
e1a49793f7 improve diagnostics when registration fails
This commit was SVN r8599.
2005-12-22 16:32:12 +00:00
Tim Woodall
e9498f7a75 improve error reporting when registrations fail
This commit was SVN r8598.
2005-12-22 16:05:28 +00:00
Tim Woodall
0c57e2d091 correct typo
This commit was SVN r8593.
2005-12-22 14:28:13 +00:00
Jeff Squyres
54c4bd3ce2 Update to have public symbols be consistent; use new prefix rule
(apparently we've been doing this in opal and orte, but not in ompi
yet).  All public symbols begin with "ompi_coll_tuned_" (not
mca_coll_tuned_) except the component struct.  Now this component
passes the illegal symbol report with no hits.

This commit was SVN r8589.
2005-12-22 13:49:33 +00:00
Jeff Squyres
efe84971ce Correct copyrights and some typos
This commit was SVN r8588.
2005-12-22 05:37:28 +00:00
Tim Woodall
3c170c410c changes required by dr
This commit was SVN r8580.
2005-12-21 15:11:40 +00:00
Tim Woodall
1f9a559245 mising include
This commit was SVN r8579.
2005-12-21 14:26:56 +00:00
Jeff Squyres
2435970cb8 Enable the new "tuned" coll component in an attempt to get wider
testing.  Note that this effectively replaces the "basic" component as
the baseline collective component.  Please report any problems with
this component.

If you run into problems with this component, you can disable it with:

   --mca coll_tuned_priority 0

This commit was SVN r8575.
2005-12-21 12:43:03 +00:00
Tim Woodall
8c1027d974 first cut at ack/retrans protocol
This commit was SVN r8570.
2005-12-20 21:42:58 +00:00
Brian Barrett
209fe64de0 * make sure we set the --enable-{static/shared} flags correctly for ROMIO
when linking into libmpi.{so,a} directly

This commit was SVN r8557.
2005-12-20 00:52:02 +00:00
Andrew Friedley
f402854a96 Initial commit of uDAPL BTL component.
- Copied the template BTL and renamed everything
 - Compiles and shows up correctly in ompi_info, not tested past that
 - Should be ignored for everyone but me

This commit was SVN r8544.
2005-12-19 16:37:05 +00:00
Brian Barrett
a5af07cd6b fixes suggested by Ralf for supporting both Libtool 1 and 2 in Open MPI...
This commit was SVN r8538.
2005-12-19 03:10:23 +00:00
Brian Barrett
b42bb3d8e8 More memory hooks tweaks... Set a flag on callbacks if the allocation /
deallocation came from the allocator (malloc, fee, etc) or somewhere
else (the user calling mmap/munmap, etc).  Going to be used by Galen
to determine if it is worth searching the allocations tree

Set flag if it is possible to intercept mmap (not always possible
due to a circular dependency between mmap, dlsym, and calloc)

This commit was SVN r8521.
2005-12-16 01:12:45 +00:00
Graham Fagg
8651658816 minor compile warnings fix
This commit was SVN r8497.
2005-12-14 19:09:46 +00:00
Rainer Keller
a7ef9fc379 - The PML uniq is different only in a few places from teg.
Get the diff down as close as possible, so only whitespace and a few
   rearrangements of code (in mca_pml_teg_add_procs, uniq is nicer to
read), so awked diff of both is minimal.

This commit was SVN r8489.
2005-12-13 09:45:01 +00:00
George Bosilca
94c109081b Protection plus begining of shared memory on windows.
This commit was SVN r8464.
2005-12-12 20:24:07 +00:00
Tim Woodall
ebbac05f3c remove questionable sched_yield - probably left over from debugging
This commit was SVN r8457.
2005-12-12 16:00:27 +00:00
George Bosilca
ce68d752ba Protect the headers
This commit was SVN r8448.
2005-12-11 05:49:29 +00:00
George Bosilca
1b667067d6 I need to know the number of iovec attached to the fragment.
This commit was SVN r8447.
2005-12-10 23:28:16 +00:00
George Bosilca
e5158142b9 The lb should be extracted from the datatype not from the convertor.
This commit was SVN r8446.
2005-12-10 23:27:20 +00:00
George Bosilca
5c8c939713 Move the comment at the right place.
This commit was SVN r8445.
2005-12-10 23:25:29 +00:00
George Bosilca
01b0db91ae Get the lower-bound from the data not from the convertor.
This commit was SVN r8444.
2005-12-10 22:38:25 +00:00
George Bosilca
aa2217df8e If we don't have yield then use sleep ...
This commit was SVN r8442.
2005-12-10 22:18:41 +00:00
George Bosilca
6f45b6175a Header protection.
This commit was SVN r8441.
2005-12-10 22:11:10 +00:00
George Bosilca
53235eb34d The Windows protection is called __WINDOWS__ (and it's a mix between WIN32 and _WIN32).
This commit was SVN r8440.
2005-12-10 22:10:39 +00:00
George Bosilca
7baae4f394 Protect the headers and remove the unused ones.
This commit was SVN r8439.
2005-12-10 22:04:28 +00:00
George Bosilca
79486e5922 Protect the min function on Windows as it's defined by default in windows.h
This commit was SVN r8437.
2005-12-10 22:02:14 +00:00
George Bosilca
2166f460b2 Remove double prototype and add OMPI_DECLSPEC to exported functions.
This commit was SVN r8436.
2005-12-10 21:59:06 +00:00
George Bosilca
cf450027b0 Windows work:
- remove and protect header files
 - small cleanups.

This commit was SVN r8435.
2005-12-10 21:54:12 +00:00
George Bosilca
c6eb429a9a Wondows work:
- remove windows socket initialization (it's already in the TCP component)
 - protect all used header files
 - remove the unused ones.

This commit was SVN r8434.
2005-12-10 21:38:48 +00:00
George Bosilca
b7353c707d Remove unprotected header files.
This commit was SVN r8432.
2005-12-10 17:04:46 +00:00
Tim Woodall
1929a97d2f corrections for MPI_BOTTOM
This commit was SVN r8429.
2005-12-09 23:27:55 +00:00
George Bosilca
8888bfb063 And the thread-safe version. The lock/unlock macros are supposed to be
empty for non threaded builds, but somehow just by moving the code a
little bit around and removing 2 call to lock/unlock the latency for TCP
went down by 2 micro-seconds ...

This commit was SVN r8426.
2005-12-09 05:16:50 +00:00
George Bosilca
e65e98ca58 Small typo.
This commit was SVN r8424.
2005-12-09 05:10:51 +00:00
Graham Fagg
141d4ea30a cleaned up ready for changes to move cached data off the MCW module to the
component (where they belong)

This commit was SVN r8407.
2005-12-08 03:14:57 +00:00
Jeff Squyres
6fbd321442 Fix a bunch of install locations for header files
This commit was SVN r8406.
2005-12-08 00:54:44 +00:00
George Bosilca
5851b55647 Improve the latency for small and medium messages. The idea is to decrease the
number of recv system call by caching the data. Each endpoint has a buffer
(the size is an MCA parameter) that can be use as a cache. Before each receive
operation this buffer is added at the end of the iovec list. All data that are
not expected by the fragment will go in this cache. If the cache contain data
all subsequent receive will just memcpy the data into the BTL buffers.

The only drawback is that we will spin around the receive_handle until all the
cached data is readed by the PML layer. This limitation come from the fact that
the event library is unable to call us if there is no events on the socket.
Therefore we are unable to keep the data in the cache until the next loop
into the progress engine.

This commit was SVN r8398.
2005-12-07 00:12:59 +00:00
Tim Woodall
bce1d2e220 volatile not required for non-threaded case
This commit was SVN r8392.
2005-12-06 18:27:56 +00:00
Brian Barrett
38391e3406 disable shared receive queue support at compile time if the mvapi implementation
does not support shared receive queues (such as the one shipped by SilverStorm / 
Infinicon for OS X).  Reviewed by Galen.

This commit was SVN r8389.
2005-12-06 15:46:30 +00:00
Brian Barrett
7998cca0f3 - don't try to read the LIBS info from ROMIO's configure script if running
the script did not complete successfully
- ROMIO likes to default to using the system compiler if no compiler is
  specified.  This can lead to using a different compiler for ROMIO as
  for Open MPI, which is not always a good thing.  Reset the default to
  behave the same way Open MPI does.

This commit was SVN r8380.
2005-12-05 23:54:27 +00:00
Tim Woodall
3f396aeae9 fix send to self for large messages
This commit was SVN r8379.
2005-12-05 23:36:33 +00:00
Jeff Squyres
5f949b567d forgot to commit this long ago
This commit was SVN r8378.
2005-12-03 15:38:42 +00:00
Tim Woodall
e135f850af backed out to much :-)
This commit was SVN r8356.
2005-12-01 17:32:27 +00:00
Tim Woodall
394bf196bd back out changes to match only one probe - consensus was we should
allow this if multiple threads post multiple probes

This commit was SVN r8353.
2005-12-01 17:17:06 +00:00
Tim Woodall
53a33f3bed dont allow fragment to match more than one probe
This commit was SVN r8352.
2005-12-01 17:06:40 +00:00