1
1

1796 Коммитов

Автор SHA1 Сообщение Дата
George Bosilca
0c4f18b397 As this object was created using the OBJ_NEW it should be destroyed using OBJ_RELEASE.
This commit was SVN r10869.
2006-07-18 18:42:30 +00:00
Rainer Keller
ac58e85c83 - Add the missing collective (and other) functions to mpi.f03
- Correct intent(out) to inout for various recvbufs to match
   standards possibility for MPI_IN_PLACE.

This commit was SVN r10868.
2006-07-18 18:12:09 +00:00
George Bosilca
d34b51b8ec Correctly compute the gaps inside the datatype. They depend on the shape of the
final datatype not on the shape of the added datatype. The gaps exist if the
extent of the final datatype is not equal to its size.

This commit was SVN r10867.
2006-07-18 15:47:12 +00:00
Brian Barrett
28b99299b2 * add new component (RDMA) for RDMA one-sided communication
This commit was SVN r10861.
2006-07-17 22:08:55 +00:00
Brian Barrett
2185c059e8 * use opal_free_list_item_t as the type of items stored in an opal_free_list_t,
rather than assuing it's an opal_list_item_t.

This commit was SVN r10860.
2006-07-17 21:51:50 +00:00
George Bosilca
b2a9d15db6 Broadcast the condition (not signal it) as we add multiple elements to the
free list.

This commit was SVN r10850.
2006-07-17 17:07:20 +00:00
Brian Barrett
dfa1221c3b * AC_CONFIG_LINKS has a minor problem in that it always uses ln -s, rather
than $(LN_S).  This causes problems with with Windows and probably
  elsewhere (re: #200).  So use a slightly different trick to get the
  right header selected for the MEMCPY and TIMER components.

* Using the same trick used to solve the AC_CONFIG_LINKS problem, 
  stop using a separate header file for direct calling in the
  PML and MTL.  This lets me remove some icky code in ompi_mca.m4
  that was more fragile than I really liked.

This commit was SVN r10841.
2006-07-16 04:23:52 +00:00
Brian Barrett
2759212e16 * use LN_S instead of ln -s, in case ln -s doesn't work...
This commit was SVN r10839.
2006-07-15 22:02:19 +00:00
Brian Barrett
2897d2ef9b * automagically select the "right" PML when direct-calling
This commit was SVN r10818.
2006-07-14 21:33:26 +00:00
Brian Barrett
d3c6035ea9 * allow direct calling to work with the MX MTL. Had to move some types
around so that the myriexpress.h header wasn't included in the same
  header as the interface declarations

This commit was SVN r10817.
2006-07-14 21:32:03 +00:00
Galen Shipman
e0ed41f6ef Helps compilation if all files are around..
This commit was SVN r10816.
2006-07-14 20:39:18 +00:00
Brian Barrett
3b978e3985 * implement short unexpected message copy optimization
This commit was SVN r10813.
2006-07-14 19:50:27 +00:00
Brian Barrett
f6e7e11ee6 Fixes truncate error (ticket #172) for the DR PML and therefore closes trac:172.
We now set truncation error if we received more than we delivered for both
the OB1 and DR PMLs (the CM PML doesn't need such a fix, as the condition
is set at the MTL level)

This commit was SVN r10812.

The following Trac tickets were found above:
  Ticket 172 --> https://svn.open-mpi.org/trac/ompi/ticket/172
2006-07-14 19:45:51 +00:00
Brian Barrett
4c5fbfdcd2 Solution to ticket #172. If we received more bytes than we delivered, then
the message was truncated.  So set the error accordingly.

This commit was SVN r10811.
2006-07-14 19:36:56 +00:00
Galen Shipman
6ed255f114 Substantial changes to the CM PML, allows us to have a very thin request for
all but buffered and persistent requests. Unfortunately we were note able to
reuse the pml_base_request_t as it was just too heavy for our needs. Lots of
code for 2/10 usec ;-) 

This commit was SVN r10810.
2006-07-14 19:32:26 +00:00
George Bosilca
5617cb1a0a Make some function static. Optimize the fast path. Still working on the latency ...
This commit was SVN r10787.
2006-07-13 16:52:40 +00:00
George Bosilca
21c542f0a5 Make the SM BTL FT friendly. Now there are 3 FT friendly BTLs: TCP, SM
and self.

This commit was SVN r10780.
2006-07-13 07:42:18 +00:00
George Bosilca
6b7467ea4d NULL is not an option ...
This commit was SVN r10779.
2006-07-13 07:38:35 +00:00
George Bosilca
7602066c4d The next and prev items cannot be NULL. The limit is the sentinel item.
This commit was SVN r10778.
2006-07-13 07:32:13 +00:00
George Bosilca
a43eb4b43e It's not about how much memory we use, but about how we use it.
Keeping the cache misses as low as possible is always a good approach.
The opal_list_t is widely used, it should be a highly optimized class.
The same functionality can be reached with one one sentinel instead
of 2 currently used.
I don't have anything against the STL version, but so far nothing can
compare with the Knuth algorithm. I replace the current implementation
with a modified version of the Knuth algorithm (the one described in
The Art of Computer Programming). As expected, the latency went down.

This commit was SVN r10776.
2006-07-13 04:56:15 +00:00
George Bosilca
9f927dc7c1 Minor cleanups. On the OB1 PML the endpoint is not used => remove it from the build.
There was some old code regarding the convertor which does not have to be there
(the problem was corrected a while ago). In the PML we already know how the progress
function is defined, so call the BML progress instead, which will save one function
call. 

The macro MCA_PML_OB1_COMPUTE_SEGMENT_LENGTH is already defined in the pml_ob1.h
so it should not be in the endpoint.h.
Remove a double definition of the mca_pml_ob1_progress function in the pml_ob1.h.

This commit was SVN r10775.
2006-07-13 00:07:13 +00:00
George Bosilca
d00e6e29e8 Create a close function for the mpool SM module, in order to allow the cleanup. The
mca_common_sm_mmap file was left over by the SM mpool, and there was nobody able
to unmap and unlink it.

This commit was SVN r10770.
2006-07-12 22:12:07 +00:00
Brian Barrett
ca5bd805db * add missing continuation line
This commit was SVN r10758.
2006-07-12 14:33:08 +00:00
George Bosilca
fd39203262 As the self proc is marked as local, there will always be at least one local
proc. Don't create the SM file until we really know there is someone lse on
the same node.

This commit was SVN r10740.
2006-07-11 17:05:13 +00:00
George Bosilca
a08f087447 Add the last value to the switch.
This commit was SVN r10738.
2006-07-11 15:59:38 +00:00
George Bosilca
623dd3357d Create another enum item that means the attribute is not initialized. The problem,
was that the compilers complain about setting a variable of an enum type to something
not in the enum.

This commit was SVN r10737.
2006-07-11 15:28:32 +00:00
George Bosilca
40f7d054f2 No more unused variables ...
This commit was SVN r10735.
2006-07-11 15:24:57 +00:00
Jeff Squyres
80597b9d08 George found that a whole bunch of lines still had tabs in them
(apparently from long, long ago).  This commit is solely changing tabs
to spaces -- no functionality or other changes.

This commit was SVN r10731.
2006-07-11 13:57:39 +00:00
George Bosilca
e2ebd1efcc Protect header file.
This commit was SVN r10720.
2006-07-11 05:38:12 +00:00
George Bosilca
ee6fab783d SwitchToThread is not defined by any library. Not even by the kernel32.lib
as noted in the MSDN documentation. At least not on my WinXP Pro box.

This commit was SVN r10719.
2006-07-11 05:36:04 +00:00
George Bosilca
14b3f141db Nothing relevant !!!
This commit was SVN r10711.
2006-07-11 00:30:26 +00:00
George Bosilca
5666bece6a Don't update the base pointer when we finish unpacking a partial data.
This commit was SVN r10710.
2006-07-11 00:22:58 +00:00
Galen Shipman
68ae99123d fix bsend completion..
This commit was SVN r10709.
2006-07-10 22:27:32 +00:00
Galen Shipman
9a1221bf7d fix buffered sends (don't use blocking sends!)
removed inaccurate comment.. 

This commit was SVN r10703.
2006-07-10 16:11:14 +00:00
Andrew Friedley
b7e0484c37 Give up on dat_ep_query() and instead manually send our address information across the wire after connection establishment.
I've introduced a race condition - seeing occasional LOCAL_LENGTH errors on the receive side.  I think I'm mixing up eager/max somehow - will look at it more on monday.

This commit was SVN r10690.
2006-07-07 21:48:16 +00:00
Galen Shipman
5085061475 don't call unpack when we received directly into the user buffer.. the
convertor doesn't handle it properly
continue peeking until we don't get anything else.. 
close the endpoint before closing the library.. 
add a blocking send that uses mx_test .. 

This commit was SVN r10684.
2006-07-06 19:54:13 +00:00
Brian Barrett
cba9b1e6b7 * the POrtals MTL is now stable enough to not have it ompi ignored
This commit was SVN r10682.
2006-07-06 18:26:48 +00:00
Brian Barrett
58ce434292 * remove the broken, defunct portals PML. Not needed anymore, since we can
do the same basic thing with the MTL design

This commit was SVN r10681.
2006-07-06 18:24:08 +00:00
George Bosilca
476c9e64df Don't keep multiples copies of the datatype and count. The only one we really need
is the one provided by the user. For the buffered send the real datatype used
for the communication is always MPI_BYTE and the count can be retrieved from
the req_bytes_packed field. This will decrease the size of the request by
one pointer and one size_t (8 bytes or 16 bytes depending on the architecture).

This commit was SVN r10680.
2006-07-06 17:58:25 +00:00
Brian Barrett
b7b93e48f5 * can definitely be optimized more, but add code for calling send for MTL
components that have a blocking send implementation

This commit was SVN r10679.
2006-07-06 16:37:59 +00:00
Brian Barrett
ef6b7e170f * make mtl datatype wrapper code inline functions
This commit was SVN r10678.
2006-07-06 15:58:07 +00:00
Galen Shipman
2217fd4003 reset receive request convertor for persistent requests
We can always call unpack.. 

This commit was SVN r10677.
2006-07-06 15:13:26 +00:00
Brian Barrett
ef8c6a249b * Fix up some direct-calling issues for the PML/MTL
This commit was SVN r10676.
2006-07-06 15:12:38 +00:00
Brian Barrett
95118f83f6 * complete all outstanding Portals events before shutting down
* Remove all knowledge of PML requests from the Portals MTL

This commit was SVN r10675.
2006-07-06 14:33:29 +00:00
Brian Barrett
26eee59032 * turns out that you should only call bsend_request_alloc or
bsend_request_init, but not both.  Otherwise, you don't free
  some buffer space and end up leaking buffers and ending in
  badness
* since you only call alloc() or init(), but not both, need to 
  restore reference counting in init()

This commit was SVN r10674.
2006-07-06 14:02:51 +00:00
Gleb Natapov
e05ec69dc4 print "flush error" only once.
This commit was SVN r10672.
2006-07-06 08:03:01 +00:00
Gleb Natapov
9b0807e547 Put pending fragment on the right waiting list.
This commit was SVN r10671.
2006-07-06 07:51:23 +00:00
George Bosilca
01a59d68da Do not generate the XFER_BEGIN and XFER_END events if the length of
the data is zero, for both the receives and the sends.

This commit was SVN r10670.
2006-07-05 23:39:13 +00:00
Brian Barrett
c793ad0a3d unpack the amount received, not the amount we had space to receive.
This commit was SVN r10669.
2006-07-05 22:31:29 +00:00
Galen Shipman
c933c0f65f unpack the length actually received, not the length posted..
This commit was SVN r10668.
2006-07-05 22:16:46 +00:00