mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Get subrank info from communicator constructor
This commit is contained in:
		@@ -47,7 +47,9 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  std::vector<int> mpi_split (mpi_layout.size(),1);
 | 
					  std::vector<int> mpi_split (mpi_layout.size(),1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), 
 | 
				
			||||||
 | 
													   GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
				
			||||||
 | 
													   GridDefaultMpi());
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * rbGrid  = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * rbGrid  = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
@@ -57,10 +59,11 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  /////////////////////////////////////////////
 | 
					  /////////////////////////////////////////////
 | 
				
			||||||
  // Split into 1^4 mpi communicators
 | 
					  // Split into 1^4 mpi communicators
 | 
				
			||||||
  /////////////////////////////////////////////
 | 
					  /////////////////////////////////////////////
 | 
				
			||||||
 | 
					  int me;
 | 
				
			||||||
  GridCartesian         * SGrid = new GridCartesian(GridDefaultLatt(),
 | 
					  GridCartesian         * SGrid = new GridCartesian(GridDefaultLatt(),
 | 
				
			||||||
						    GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
											    GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
				
			||||||
						    mpi_split,
 | 
											    mpi_split,
 | 
				
			||||||
						    *UGrid); 
 | 
											    *UGrid,me); 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * SFGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,SGrid);
 | 
					  GridCartesian         * SFGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,SGrid);
 | 
				
			||||||
  GridRedBlackCartesian * SrbGrid  = SpaceTimeGrid::makeFourDimRedBlackGrid(SGrid);
 | 
					  GridRedBlackCartesian * SrbGrid  = SpaceTimeGrid::makeFourDimRedBlackGrid(SGrid);
 | 
				
			||||||
@@ -89,8 +92,6 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  /////////////////
 | 
					  /////////////////
 | 
				
			||||||
  // MPI only sends
 | 
					  // MPI only sends
 | 
				
			||||||
  /////////////////
 | 
					  /////////////////
 | 
				
			||||||
  int me = UGrid->ThisRank();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  LatticeGaugeField s_Umu(SGrid);
 | 
					  LatticeGaugeField s_Umu(SGrid);
 | 
				
			||||||
  FermionField s_src(SFGrid);
 | 
					  FermionField s_src(SFGrid);
 | 
				
			||||||
  FermionField s_src_e(SFrbGrid);
 | 
					  FermionField s_src_e(SFrbGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user