Merge branch release-2016
authorMark Abraham <mark.j.abraham@gmail.com>
Mon, 16 Oct 2017 06:10:34 +0000 (08:10 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Mon, 16 Oct 2017 06:12:42 +0000 (08:12 +0200)
Change-Id: Ia56e987f52e4dee425b12b02940ad9ca18d0c13a

1  2 
src/gromacs/gmxpreprocess/readir.cpp
src/gromacs/mdlib/update.cpp
src/gromacs/mdtypes/commrec.h

Simple merge
Simple merge
index 37cab123b418ddb1e488e11fb261f0b7422f5b57,4cfb9e9bb2c768c72e4e81f113a89fc738feb0da..cdbf2b9e235dda703b39c4a4b8a81efcd9da2cf9
@@@ -94,17 -94,20 +94,23 @@@ struct t_commrec 
      /* Not used yet: int threadid, nthreads; */
      /* The nodeid in the PP/PME, PP or PME group */
      int      nodeid;
-     MPI_Comm mpi_comm_mysim;
-     MPI_Comm mpi_comm_mygroup;
+     /* MPI communicators within a single simulation
+      * Note: other parts of the code may further subset these communicators.
+      */
+     MPI_Comm mpi_comm_mysim;           /* communicator including all ranks of
+                                           a single simulation */
+     MPI_Comm mpi_comm_mygroup;         /* subset of mpi_comm_mysim including only
+                                           the ranks in the same group (PP or PME) */
  
 -    /* MPI ranks within a physical node for hardware access */
 -    int            nrank_intranode;    /* nr of ranks on this physical node */
 -    int            rank_intranode;     /* our rank on this physical node */
 -    int            nrank_pp_intranode; /* as nrank_intranode, for particle-particle only */
 -    int            rank_pp_intranode;  /* as rank_intranode, for particle-particle only */
 +    /* MPI ranks and a communicator within a physical node for hardware access */
 +    MPI_Comm       mpi_comm_physicalnode; /* communicator for all ranks of the physical node
 +                                           * NOTE: this communicator should only be used during initialization and finalization, as it can contain ranks from PP, PME and multiple simulations with multisim
 +                                           */
 +    int            nrank_intranode;       /* nr of ranks on this physical node */
 +    int            rank_intranode;        /* our rank on this physical node */
 +    int            nrank_pp_intranode;    /* as nrank_intranode, for particle-particle only */
 +    int            rank_pp_intranode;     /* as rank_intranode, for particle-particle only */
  
      gmx_nodecomm_t nc;