1. 25 Oct, 2012 1 commit
  2. 20 Oct, 2012 2 commits
    • James Dinan's avatar
      [svn-r10426] MPI-3 RMA Flush implementation · 7e3e73a2
      James Dinan authored
      This commit implements MPI-3 RMA's flush and flush_all operations.
      
      Reviewer: buntinas
      7e3e73a2
    • James Dinan's avatar
      [svn-r10423] Added passive target immediate locking · 5109ab1b
      James Dinan authored
      When enabled, this mode of operation immediately requests the lock when
      MPI_Win_lock is called.  Currently, this is enabled by setting the
      MPICH_RMA_LOCK_IMMED environment variable.  In the future, we can also make
      this mode of operation available though an info/assert.  This capability is
      needed to implement MPI-3's flush operations.
      
      Reviewer: buntinas
      5109ab1b
  3. 11 Oct, 2012 1 commit
  4. 10 Oct, 2012 1 commit
  5. 20 Sep, 2012 1 commit
    • James Dinan's avatar
      [svn-r10249] Updated fetch_and_op implementation · 9574b9ab
      James Dinan authored
      Updated the fetch_and_op implementation to have two data transfer paths; one
      where data can be embedded in the packet header and one where it is sent
      separately.  With this change, the header size is back to 40 bytes.
      
      Reviewer: buntinas
      9574b9ab
  6. 07 Sep, 2012 1 commit
  7. 04 Sep, 2012 1 commit
  8. 30 Aug, 2012 1 commit
  9. 23 Aug, 2012 2 commits
    • James Dinan's avatar
      [svn-r10142] Shared mem window: added disp_unit, fixed size=0. · 3530af43
      James Dinan authored
      Added the missing disp_unit argument (was added in a later revision of the MPI
      3.0 spec) and fixed a bug in base pointer calculations when processes pass a
      size of 0.  Added a test case to test MPI-2 ops on shared memory windows.
      
      Reviewer: buntinas
      3530af43
    • James Dinan's avatar
      [svn-r10140] Moved MPID RMA constants to RMA header file. · b79630d2
      James Dinan authored
      Moved RMA implementation constants from mpidimpl.h to the RMA implementation
      header.  Also updated constants to use enumeration types and removed an old
      fixme note, which indicated that this should be done.
      
      Reviewer: buntinas
      b79630d2
  10. 08 Aug, 2012 3 commits
    • James Dinan's avatar
      [svn-r10116] Reversed r10057. · f5ce7800
      James Dinan authored
      This patch was a quick fix, which moved shared memory segment support from
      Nemesis up to ch3 in order to support shared memory windows.  This
      functionality has been pushed down into Nemesis, so the r10057 fix is no longer
      needed.
      
      Reviewer: buntinas
      f5ce7800
    • James Dinan's avatar
      [svn-r10115] New CH3 window functions interface. · 55589398
      James Dinan authored
      This adds the win_fns table to ch3, which allows the channel to override the
      default implementation of window creation routines provided by ch3.  This also
      pushes the implementation of shared memory windows down into Nemesis, includes
      window functions for sock, and contains multiple improvements to the window
      creation functions code.
      
      Reviewer: buntinas
      55589398
    • James Dinan's avatar
      [svn-r10114] Removed old/unused RMA vtable in CH3. · 52d980d7
      James Dinan authored
      Removed the old RMA virtual function infrastructure from CH3 -- this code was
      all already dead.  Function overrides are already provided per-window in the
      MPID_Win structure.  Overrides for non-window-specific (window creation)
      operations will be added shortly.
      
      Reviewer: buntinas
      52d980d7
  11. 01 Aug, 2012 1 commit
  12. 31 Jul, 2012 1 commit
  13. 25 Jul, 2012 1 commit
  14. 24 Jul, 2012 1 commit
  15. 03 Jul, 2012 2 commits
  16. 06 Apr, 2012 2 commits
  17. 30 Mar, 2012 1 commit
  18. 08 Mar, 2012 1 commit
  19. 20 Feb, 2012 2 commits
    • David Goodell's avatar
      [svn-r9512] (untested) "ENOSYS" version of mx/newmad mprobe support · 0f46f858
      David Goodell authored
      This adds the appropriate code in the device to support networks
      that natively do tag matching, such as mx and newmad.  The appropriate
      new functions in those netmods throw a new "**nomprobe" error message
      and MPI_ERR_INTERN error class.
      
      Due to lack of time and easy availability of MX+NewMad platforms, this
      code has not been tested.  (Sorry Guillaume!)
      
      No reviewer.
      0f46f858
    • David Goodell's avatar
      [svn-r9511] implement MPIX_Mprobe and friends · a91381e9
      David Goodell authored
      This includes MPIX_Mprobe, MPIX_Improbe, MPIX_Mrecv, and MPIX_Imrecv.
      
      !!!NOTE!!! This change adds four more functions to the ADI.
      
      The current implementation of MPIX_Mprobe is much less efficient than it
      could be.  Right now it polls the unexpected queue (UQ), much like
      MPI_Probe does.  A better implementation would enqueue the "message"
      object on the PQ so that the matching is handled by the progress engine
      in the various packet handlers.  Unfortunately, such an implementation
      is surprisingly complicated at this point.
      
      Includes only a simple test for now (test/mpi/pt2pt/mprobe), but it at
      least shows that our Mprobe functionality basically all works.
      
      Reviewed by buntinas@.
      a91381e9
  20. 22 Dec, 2011 1 commit
  21. 19 Dec, 2011 1 commit
  22. 21 Nov, 2011 1 commit
    • David Goodell's avatar
      [svn-r9202] very rough implementation of the MPI_T interface (as MPIX_T) · 4831e108
      David Goodell authored
      Most of the problems associated with this implementation have to do with
      initialization bootstrapping/teardown issues.  Using the new interface
      to profile MPI_Init/MPI_Finalize certainly has at least a few bugs right
      now.  Use entirely within an MPI_Init/MPI_Finalize region should
      basically work fine.
      
      Two performance variables are exposed right now, the expected and
      unexpected queue lengths.  All environment variables from the parameter
      interface are exposed via the new "control variable" API.
      
      No reviewer.
      4831e108
  23. 06 Oct, 2011 1 commit
  24. 04 Feb, 2011 1 commit
  25. 20 Jan, 2011 1 commit
    • David Goodell's avatar
      [svn-r7784] new NBC schedule mechanism, including progress, but no working collectives · eaf25042
      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@.
      eaf25042
  26. 13 Jan, 2011 1 commit
  27. 11 Jan, 2011 1 commit
  28. 06 Jan, 2011 1 commit
  29. 23 Dec, 2010 1 commit
    • Darius Buntinas's avatar
      [svn-r7604] Reintegrate errors-return branch. · 72d855b4
      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@
      72d855b4
  30. 06 Nov, 2010 1 commit
    • William Gropp's avatar
      [svn-r7416] Major improvement to RMA performance for long lists of operations,... · 3608ca24
      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
      3608ca24
  31. 28 Oct, 2010 1 commit
  32. 06 Oct, 2010 1 commit
  33. 01 Sep, 2010 1 commit