- remove redundant OBJ_CONSTRUCT in bcast
- fix up some macros in coll_sm.h
- check to ensure that if there are too many processes in the
communicator (i.e., if we couldn't fit a flag for each of them in
the control segment), then fail selection
- setup the in_use flags properly
- adapt to new mpool API
- first working copy of reduce -- not tree-baed (but still
NUMA-aware), and only processes in order from process 0 to process
N-1 -- do not have a tree-based and/or commutative version yet
(i.e., process the results in whatever order they arrive)
Reduce now passes the new ibm reduce_big.c test. Woo hoo! Time to
declare success for the evening (and run the intel test tomorrow).
This commit was SVN r7379.
In the case where the user want to roll-back a convertor we should first rewind the
convertor to the beginning and then move it to the requested position. Otherwise the
logic do roll-back a convertor in an optimized way is really difficult. BTW, in terms of
performances one would prefer to have 2 convertors and play with position inside, than
just having one and roll it back.
This commit was SVN r7378.
relative displacement not the absolute one. This relative displacement will be addesd to the
absolute one in order to compute the correct position on the source (or destination) buffer.
This commit was SVN r7377.
all processes call MPI_Gatherv(MPI_IN_PLACE...) because IN_PLACE is
only allowed to be used at the root. Non-root processes must use
their receive buf as the send buf.
This commit was SVN r7363.
the way we use weak symbols (you have to use the actual symbol in the
.o file or the weak symbol isn't generated). It worked for our test
case, but not for libmpi. Make our test case look more like what we
do in libmpi by generating a .o file with a weak symbol and attempting
to use it from another object file.
This commit was SVN r7360.
caller to specify a subset of the state variables that it can can subscribe to.
This is specified with one of three special flags defined in rmgr/rmgr_types.h
This is useful when we only care about a subset of the state changes, such as
in orted which only needs to know when a job has terminated or aborted.
This commit was SVN r7356.
- added relevant logic for everything except
mca_coll_basic_reduce_log_intra() -- need some help from George /
Edgar on this one...
- replaced ompi_ddt_sndrcv() with ompi_ddt_copy_content_same_ddt()
where relevant
- removed some "if (size > 1)" conditionals, because the self coll
module will always be chosen for collectives where size==1
Waiting for BA's tests to check the validity of this IN_PLACE stuff.
We'll see how it goes!
This commit was SVN r7351.
- fix the first test
- make the #define's always have a value (0 or 1)
- prefix them with OMPI
- remove the extra "__"'s in the names, since they're now
OMPI-specific #define names
This commit was SVN r7339.
-added some alltoall calls (pairwise checked ok, bruck testing)
-changes in use of data hung of communicator
-making sendrecv call a true inline function
-more use ompi_ddt routines
This commit was SVN r7337.
waiting instead for the SOH to indicate that the jobid has terminated.
In a scheduled environment, if your program has a section of MPI code
followed by a section of computation that some processes execute while
other proceses terminate normally. This patch keeps the scheduler from
terminating all of the processes and the allocation if all of the processes
on an allocated node exit well before other processes on other nodes.
This commit was SVN r7333.
They can be used to give additional knowledge to the compiler about the behaviour of a
function so it can optimize further. In the begining we just need it for the alias weak
a better way to create function aliases.
The problem was that the intel compiler version 8 to 9 support pragma weak but do not include
the function in the .o file if it's not used at least once in the same .c file. With the
alias weak this problem is solved as even intel support it correctly.
This commit was SVN r7330.