- 06 Oct, 2011 1 commit
-
-
Darius Buntinas authored
[svn-r9034] Added parameter to allow netmods to force ready sends to use rendezvous for large messages. Reviewed by goodell@
-
- 04 Feb, 2011 1 commit
-
-
David Goodell authored
This change moves the greq functions and state into a subordinate struct that is only created for generalized requests. This saves ~48 bytes per request on many platforms in the common pt2pt request case. Reviewed by buntinas@.
-
- 20 Jan, 2011 2 commits
-
-
David Goodell authored
This change consists of four main parts: 1. Updating all of the MPIR_Ifoo_impl routines to assume that all nonblocking collective functions are set in the coll_fns field. 2. Defining the MPID_Sched_ portion of the ADI in mpir_nbc.h. 3. Implementing that interface in src/mpid/common/sched 4. Modifications to ch3:nemesis and ch3:sock in order to call the progress engine hook for the scheduling mechanism, as well as correctly including the various scheduling headers in CH3 headers. Reviewed by balaji@.
-
David Goodell authored
It was causing variable shadowing in a source file that used it. Reviewed by balaji@.
-
- 13 Jan, 2011 1 commit
-
-
Darius Buntinas authored
[svn-r7728] Added attribute to COMM_WORLD to list failed processes. The attribute is called MPICH_ATTR_FAILED_PROCESSES, and should be declared 'extern' in the application. (I'm not sure about the implications of adding a symbol to mpi.h on the ABI.)
-
- 11 Jan, 2011 2 commits
-
-
Darius Buntinas authored
[svn-r7687] Changed global completion count to use atomics rather than locks. This will allow us to update the completion count asynchronously from other threads or interrupt contexts
-
Darius Buntinas authored
-
- 06 Jan, 2011 1 commit
-
-
Darius Buntinas authored
[svn-r7671] merged in error-return branch. This branch completes with an error recvs on failed VCs or anysource recvs on comms with failed VCs. See log for r7669 for details.
-
- 23 Dec, 2010 1 commit
-
-
Darius Buntinas authored
- Clean up some error checking code. - Report communication errors in request rather than function returns. This fixes cases where an error from a nonblocking communication operation is reported in the return value of a subsequent unrelated blocking operation. - When a VC is moved to the MORIBUND state, all pending send requests and posted receive requests are completed with errors. Nontrivial changes reviewed by goodell@
-
- 08 Nov, 2010 1 commit
-
-
William Gropp authored
[svn-r7425] Fixed error in computing previous pointer location in RMA list and adding missing checks on error returns
-
- 06 Nov, 2010 1 commit
-
-
William Gropp authored
[svn-r7416] Major improvement to RMA performance for long lists of operations, an immediate mode accumulate for single ints, store the MPID_Comm within the window, and added a basic performance instrumentation interface that was extensively used to improve the RMA performance (enabled with --enable-g=instr). With these fixes, MPICH2 can run the one-sided version of the Graph500 benchmark at a respectable if not great rate
-
- 04 Nov, 2010 1 commit
-
-
Darius Buntinas authored
-
- 28 Oct, 2010 1 commit
-
-
Darius Buntinas authored
-
- 06 Oct, 2010 1 commit
-
-
William Gropp authored
[svn-r7312] Correct use of MPI_ERR_NO_MEM (should be MPI_ERR_OTHER) for out-of-memory that does not pertain to MPI_Alloc_mem and add detail to error messages about out-of-memory
-
- 01 Sep, 2010 1 commit
-
-
Darius Buntinas authored
[svn-r7152] Reworked VC state machine to include failed connections. See http://wiki.mcs.anl.gov/mpich2/index.php/CH3_VC_protocol for a description of the new state machine. The barrier from MPID_Finalize has been removed to allow finalize to complete even if connections/processes have failed. Reviewed by goodell@.
-
- 13 Aug, 2010 1 commit
-
-
Darius Buntinas authored
[svn-r7055] replaced some get_vc_set_active calls with just get_vc, because in some cases we were activating a VC that never got connected. Thanks to Cray for pointing this out. reviewed by goodell@
-
- 03 Aug, 2010 1 commit
-
-
David Goodell authored
No reviewer.
-
- 27 Jul, 2010 5 commits
-
-
David Goodell authored
No reviewer.
-
David Goodell authored
No reviewer.
-
David Goodell authored
This commit begins to parallelize the progress engine slightly by making it possible to signal request completion without acquiring the (bloated and largely serial) MPIDCOMM critical section. No reviewer.
-
David Goodell authored
When compiled for fine-grained threading, the completion counter serves as a form of lockfree signalling. As such, atomic access and memory barriers must be used to ensure correctness. In per-object mode, this code also contains valgrind client request annotations to inform Helgrind/DRD/TSan about the lockfree signalling pattern. No reviewer.
-
David Goodell authored
The LMT code should definitely be able to get better parallelism than this, but it will require careful study to get it right. The LMT critical section is just held in a far too broad and clumsy way right now. There are two major problems: 1) the LMT code must call "up" to the main CH3 code in order to send and receive helper packets 2) MPIDCOMM and LMT both lock code regions, rather than data. Together with (1) above, this makes it difficult to avoid deadlocks. No reviewer.
-
- 01 Jul, 2010 1 commit
-
-
Darius Buntinas authored
-
- 23 Jun, 2010 1 commit
-
-
Jayesh Krishna authored
[svn-r6817] Adding format specifier for Pints and removing instances of custom Aint format specifier defns - Codes that need Aint format spec should use MPI_AINT_FMT_*
-
- 20 May, 2010 1 commit
-
-
David Goodell authored
per-object now compiles, although it segfaults on my laptop at least No reviewer.
-
- 17 May, 2010 2 commits
-
-
David Goodell authored
The code was introduced in r3200. No reviewer.
-
David Goodell authored
This is actually several logical changes, but they are very difficult to separate into individual commits because of how tangled the old macros were. Some of the changes are: - general macro cleanup: do{}while(0) and whitespace issues - add support for compiler-assisted thread-local storage (TLS) - make MPID_Thread (e.g. pthread) TLS macros easier to understand and use - drop non-portable parentheses from MPIU_ISTHREADED macro - eliminate the MPID_CS_* family of macros which were simultaneously complementary to and in conflict with the newer MPIU_THREAD_CS_* macros No reviewer.
-
- 14 May, 2010 1 commit
-
-
Rajeev Thakur authored
[svn-r6647] data size calculation needs to be type cast to MPIDI_msg_sz_t, otherwise it becomes negative if > 2GB. Fixes communication part of ticket #1005. Get_count still fails.
-
- 28 Apr, 2010 1 commit
-
-
David Goodell authored
These channels are old and have been deprecated for a while. Their presence is hampering PMI API development, so I have removed them. These were the only channels seriously using the "process locks" code, so that mess has also been deleted. The only remaining useful functionality (MPIDU_Yield) has been moved to the OS wrappers.
-
- 13 Jan, 2010 1 commit
-
-
William Gropp authored
[svn-r6115] Use a defined typedef for the message match information; this is needed by the debugger interface
-
- 16 Dec, 2009 1 commit
-
-
William Gropp authored
[svn-r5977] Prepare for fix to the debugging interface by providing a name for the message_match_parts structure
-
- 06 Nov, 2009 1 commit
-
-
Darius Buntinas authored
-
- 20 Oct, 2009 2 commits
-
-
David Goodell authored
There were several layers of brokenness that prevented lock-free reference counting from occurring. Some of this code has been brought over from the threads development branch, but most of it is new. This code still contains many questionable uses of the reference count variables that need to be investigated and fixed (search for FIXME-MT). No reviewer.
-
David Goodell authored
Prior to this commit the constants used to indicate the thread granularity level were defined after mpidpre.h was included in mpiimpl.h This prevented the device from making conditional compilation decisions in mpidpre.h based on the thread granularity level selected by configure. No reviewer.
-
- 19 Oct, 2009 1 commit
-
-
Darius Buntinas authored
-
- 06 Aug, 2009 1 commit
-
-
Guillaume Mercier authored
that triggered a warning when compiling MX/Newmad network modules. Note: both routines are implemented in the modules, some code has to be introduced in mpid_probe.c and mpid_iprobe.c to be able to exploit it (any_source not supported for now).
-
- 24 Jul, 2009 1 commit
-
-
David Goodell authored
This ticket also converts the MPIDI_Request_recv_pending macro into two macros which have slightly clearer names and usages. The side effect of the old macro was very confusing. Reviewed by buntinas@.
-
- 22 May, 2009 1 commit
-
-
David Goodell authored
We weren't initializing the condition variable, so cond_wait would fail, and the thread in progress_delay wouldn't ever release the associated mutex. Since the mutex wasn't ever released, the other thread that was yielding was unable to reacquire the mutex and check the completion counter, resulting in a deadlock. No reviewer.
-
- 11 May, 2009 1 commit
-
-
David Goodell authored
(mostly) fixes ticket #566. Reviewed by buntinas@.
-
- 06 May, 2009 1 commit
-
-
Darius Buntinas authored
[svn-r4411] Fixed nemesis to correctly set vc state (instead of setting all vcs to active. Renamed MPIDI_Comm_get_vc to MPIDI_Comm_get_vc_set_active to alert caller to side-effect. Added MPIDI_CHANGE_VC_STATE macro to set the vc state and call debugging macro. Changed all places where vc state is changed to use this macro. Reviewed by goodell@.
-