1

I noticed these bits from the MPI 3.1 standard:

Advice to users. Attaching memory to a window may require the use of scarce resources; thus, attaching large regions of memory is not recommended in portable programs.

Advice to implementors. A high-quality implementation will attempt to make as much memory available for attaching as possible.

I've looked at the man pages for MPI_Win_attach from various implementations (namely MPICH, Cray MPICH, OpenMPI, SGI MPT, and Intel MPI), and haven't seen any documented limitations on the amount of memory that those implementations have on how much memory can be attached. Should I not worry too much about the "advice to users" given here?

Community
  • 1
  • 1
jjramsey
  • 1,131
  • 7
  • 17
  • I guess that since the memory will be target for RDMA access, it might/will need to be "pinned" or "locked" memory. This non-swappable memory is usually a limited subset of the whole memory. Therefore, one must better use it scarcely to avoid troubles. However, the amount of pinned or locked memory is normally adjustable (at boot time) so this isn't too big a deal either. – Gilles Oct 07 '16 at 13:08
  • @Gilles: It seems unclear to me, though, why that would have an impact on MPI_Win_attach in particular. Offhand, I'd expect that the limited pool of pinned or otherwise "special" memory would be mainly an issue for MPI_Alloc_mem (and by extension any passive RMA that is limited to using buffers allocated by MPI_Alloc_mem). What makes MPI_Win_attach all that special? – jjramsey Oct 12 '16 at 15:58

0 Answers0