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

4612 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
b38ea5eecb Doc updates.
This commit was SVN r5999.
2005-06-09 01:12:54 +00:00
George Bosilca
6886716763 Update the the new datatype engine.
This commit was SVN r5998.
2005-06-08 20:47:48 +00:00
Tim Woodall
567abb4a63 set segment length in bmi_prepare_src
This commit was SVN r5997.
2005-06-08 20:38:03 +00:00
Tim Woodall
fc9a84ec21 initial changes for rdma protocol
This commit was SVN r5996.
2005-06-08 20:37:19 +00:00
Ralph Castain
ba7673a83f Checkpoint the first step in re-enabling the notification for subscriptions that monitor value changes. Added a new array that stores the actions each time the registry is called via a function that modifies its values. Updated the dump function to output the action records.
This commit was SVN r5995.
2005-06-08 19:40:38 +00:00
George Bosilca
63b382ec6c First step toward the new datatype engine.
This commit was SVN r5994.
2005-06-08 19:15:26 +00:00
George Bosilca
b615be73d4 Update the MPI level to take advantage of the new datatype engine.
This commit was SVN r5993.
2005-06-08 19:14:41 +00:00
George Bosilca
5c3aa914b0 We depend now on the convertor.h not on the datatype.h
This commit was SVN r5992.
2005-06-08 19:14:07 +00:00
George Bosilca
de56467521 The max_size should be a size_t. I add myself to the ompi_unignore list :)
This commit was SVN r5991.
2005-06-08 19:13:28 +00:00
George Bosilca
7a41a6cd7a Now we have to include the convertor.h
This commit was SVN r5990.
2005-06-08 19:12:42 +00:00
George Bosilca
6d4624e5d4 Use the new datatype engine and the convertor attached to the requests (send and receive).
This commit was SVN r5989.
2005-06-08 19:12:14 +00:00
George Bosilca
8cc028fee9 Use the new datatype engine and the convertor attached to the requests (send and receive).
This commit was SVN r5988.
2005-06-08 19:11:32 +00:00
George Bosilca
a9f342ac7e Adapt to the new datatype engine. There are 2 big differences with the previous version:
1. for the send operation: the convertor attached to the request is initialized by the
   _INIT macro and it will be used as is by the PTLs for the first fragment. For the
   others fragments it will be cloned by the PTLs.
2. for the receive operation: I create a macro MATCHED which create a convertor (attached
   to the receive PML request). The PTLs can use this convertor for the first fragment,
   and clone it forr the others fragments.

Playing with positions ... The position argument change it's type and prototype. Now it's
a size_t to be consistent with the rest of thee PML/PTL and it's a pointer to a size_t.
I need this pointer to correct the value of the position as some of the convertors are
not allowed to stop in the middle of a basic datatype (cannnot copy 2 bytes from an int).

This commit was SVN r5987.
2005-06-08 19:10:15 +00:00
George Bosilca
3f8d210129 Add a newline at the end of the file.
This commit was SVN r5986.
2005-06-08 19:03:29 +00:00
George Bosilca
8e6223cb36 New datatype engine. Most of the work was on the initialization. Now there are several
functions to create/clone a convertor, with the goal of reducing the time spend on
the convertor related functions, thus reducing the latency.

This commit was SVN r5985.
2005-06-08 19:02:16 +00:00
George Bosilca
993982f748 Cleanup. Most of the convertor related functions moved from all the datatype file into these 2.
This is the first commit for the new datatype engine. Please hold your updates until I send an email to the mailing list.

This commit was SVN r5984.
2005-06-08 19:00:16 +00:00
Ralph Castain
2095525596 Fix a couple of minor thiings per Jeff's suggestions:
1. Change the hardcoded "8" to "SIZE_OF_CHAR"

2. Change "cover_bit" to "resize"

Also removed an extra "if" check that was duplicative.

Again, tested on up to 100 processes.

This commit was SVN r5983.
2005-06-08 18:32:53 +00:00
Galen Shipman
066e49b7be objectify
This commit was SVN r5982.
2005-06-08 16:00:55 +00:00
Tim Woodall
af508a0147 objectify
This commit was SVN r5981.
2005-06-08 15:59:49 +00:00
Ralph Castain
7306b9d7b9 Fix the registry search routine to remove a buffer that wasn't expanding as it should - cause of recent problems observed when spawning larger numbers of processes.
For anyone interested, the problem stemmed from two things:

1. a bug in the ompi_bitmap utility (which I copied to orte_bitmap to avoid unintentionally disturbing something else) that causes the bitmap NOT to expand unless the caller asks for a bit that is more than one byte outside the current array size. The unit test didn't pick it up because it doesn't check that close to the boundary.

2. a "feature" in the ompi_bitmap utility that only expands the array if you try to SET a bit outside the current boundary, but NOT if you try to CLEAR a bit outside the array limit. This appears intentional as the unit test checks for this behavior, but I hadn't been expecting the asymmetry.

The orte_bitmap utility now appropriately expands in both circumstances. I also added a function to expand the array so it "covers" a bit location without setting or clearing it. The function allows you to ensure the array is big enough to handle the specified bit, but leave the bit alone if it already is there (the other functions would set/clear it if it was).

I've tested it with up to 100 processes without problem.

This commit was SVN r5980.
2005-06-08 15:48:38 +00:00
George Bosilca
b7724a2e71 There is a BIG BIG comment saying that the pipeline should be the last field in the structure ... Then the convertor have to be placed before ...
This commit was SVN r5979.
2005-06-08 06:24:20 +00:00
Galen Shipman
94a53b8f11 Removed and consolidated code
This commit was SVN r5977.
2005-06-07 21:30:14 +00:00
Galen Shipman
7e2fc97eab Modified svn:ignore
This commit was SVN r5976.
2005-06-07 20:34:09 +00:00
Galen Shipman
f073051f90 Added entries to svn:ignore
This commit was SVN r5975.
2005-06-07 20:28:05 +00:00
Galen Shipman
c52bc9a6ad This commit was SVN r5974. 2005-06-07 20:24:38 +00:00
Galen Shipman
66cc6df56d Modified ib bmi to use inline send
Post receive requests during send 

This commit was SVN r5973.
2005-06-07 20:19:44 +00:00
Tim Woodall
cfb1e2d608 resolve weird compiler warning
This commit was SVN r5972.
2005-06-07 17:08:06 +00:00
Tim Woodall
9b57137559 temporary workaround until ddt changes are incorporated
This commit was SVN r5971.
2005-06-07 16:30:11 +00:00
Tim Woodall
a475c189bc only create fragments for unmatched receives
This commit was SVN r5967.
2005-06-07 14:12:47 +00:00
Jeff Squyres
f9788aa64f Fix buffer allocation problem when running with the log reduce
algorithm.

This commit was SVN r5966.
2005-06-07 13:56:57 +00:00
Galen Shipman
8bfb3d229d Fixed misc compiler warnings
This commit was SVN r5962.
2005-06-07 02:09:57 +00:00
George Bosilca
732103f794 Correctlly se the sources for alll types of builds: shared or static.
This commit was SVN r5961.
2005-06-06 22:10:26 +00:00
Tim Woodall
9008f4be66 use correct header length
This commit was SVN r5960.
2005-06-06 22:08:02 +00:00
Tim Woodall
31c69981a0 correct offset for first segment
This commit was SVN r5959.
2005-06-06 21:52:20 +00:00
George Bosilca
b93f07fd0e Remove compilation warnings.
Correct the pml base allocator
C89 forbids mixed declarations and code !!!

This commit was SVN r5958.
2005-06-06 21:46:43 +00:00
Brian Barrett
b5ea5e0994 * Some recent versions of GCC try very hard to make it impossible to
use ebx in inline assembly.  For the beta, just don't inline the 64
bit atomic compare and swap on IA32 (cmpxchg8 requires use of ebx).
Any caller of the function will fall back to the non-inline version.

This commit was SVN r5957.
2005-06-06 21:03:58 +00:00
Galen Shipman
ec7aa4fba9 Corrected several issues in the ib path.. also updated calls to mpool to adhere to interface changes.
This commit was SVN r5956.
2005-06-06 20:26:22 +00:00
Galen Shipman
24bb5c2f5d Updated interfaces for mpool change
This commit was SVN r5955.
2005-06-06 20:20:47 +00:00
Galen Shipman
b871a3a787 mpool interface change
This commit was SVN r5954.
2005-06-06 20:19:58 +00:00
Galen Shipman
5776f11bc6 Updated the mpool interfaces for user specified data
This commit was SVN r5953.
2005-06-06 20:18:56 +00:00
Galen Shipman
0b41dd278a Updated interface for user-data
This commit was SVN r5952.
2005-06-06 20:17:57 +00:00
George Bosilca
05233256ee Bring in the trunk some of the features of the second generation datatype engine.
A new file has been added (new_pack.c). It is not yet used but inside I try to create
a more cleaner ppack/unpack function. There is still work in progress on this file.

New !!! In debug mode there is a gdb friendly function where you can set a breakpoint
(ompi_ddt_safeguard_pointer_debug_breakpoint) in order to see what's the status of
the convertor and the internal veraible when the ddt engine try to do a pack/unpack
outside the user buffer.

A new field in the convertor structure. This field get initialized in the convertor_init_for_*
functions and point to the datatype description that have to be used by the pack/unpack
functions. Until now each one of them have a test in the begining to detect which data
representation to be used (normal or optimized). Now this field point directly to the correct
one.

Change names for local variable to be easier to understand what they are supposed to 
represent. 

Add a new function ompi_convertor_set_start_position which can be used to set the
current position in the convertor depending on the datatype attached to the convertor.

An improved version of convertor_init_generic which work wiith convertors comming from a cache.
Only the necessary field get modified.

A lot more cleanups ...

This commit was SVN r5950.
2005-06-06 19:48:50 +00:00
George Bosilca
c7acb3bc5f Still sync with the beta ...
Use the correct indentation.
Now we can force the progress function to grab as many events as possible
(in order to avoid starvation for the send queue).
Add more elems in the unexpected queue (internal buffers use to temporary
store the data for the unexpected messages).
Decrease the number of variables in some functions (cleanup).
Avoid using goto ...

This commit was SVN r5949.
2005-06-06 18:42:24 +00:00
George Bosilca
462fe884c8 Still bringing the trunk in sync with the beta.
This one remove some useless code and some compilation warnings.

This commit was SVN r5948.
2005-06-06 18:35:02 +00:00
George Bosilca
593f7c1be5 Do not set the stack for this convertor. As NOBODY is supposed to use it we can have it uninitialized in order to decrease the initial overhead for the first fragment.
This commit was SVN r5947.
2005-06-06 18:33:52 +00:00
George Bosilca
43876d080c Bringing trunk in sync with the beta.
Split the datatypes in 3 categories:
1. basic datatypes: count always one and the datatype is always
contiguous
2. complex datatypes composed on one basic type with a count. Most of
the time these datatypes will be contiguous.
3. complex datatypes composed by 2 basic types. Depending on the
architecture these types can be non contiguous.

Reorder the defines to match the previous categories.  Add some
comment to describe the changes in the files.
Clean-up the flags:
- DT_FLAG_PREDEFINED is attached to all predefined datatypes.
- DT_FLAG_CONTIGUOUS is attached to all contiguous one. This flag is
  detected at runtime depending on the architecture.

This commit was SVN r5946.
2005-06-06 18:19:11 +00:00
Tim Woodall
e830442d04 bytes_received is initialized and passed in
This commit was SVN r5945.
2005-06-06 16:56:42 +00:00
George Bosilca
ea1872f1d3 Correctly handle the length for unexpected messages (add one more field in the recv frag
struct).

This commit was SVN r5944.
2005-06-06 16:19:20 +00:00
Tim Woodall
3c4c272714 constant for maximum number of allowed segments in a descriptor
This commit was SVN r5943.
2005-06-06 16:18:57 +00:00
Tim Woodall
bd59bb4a16 handle receive of user data
This commit was SVN r5942.
2005-06-06 16:17:43 +00:00