mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Change the SIMD command correctly with precision = double vs. single and
connect the "Real" default precisoin to a configure flag. Have RealF, RealD and Real types, where Real is compile target dependent single/double, RealF is single and RealD is double etc..
This commit is contained in:
		@@ -25,7 +25,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt4 = GridDefaultLatt();
 | 
					  std::vector<int> latt4 = GridDefaultLatt();
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,13 +22,16 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  int threads = GridThread::GetThreads();
 | 
					  int threads = GridThread::GetThreads();
 | 
				
			||||||
  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
					  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
				
			||||||
 | 
					  std::cout << "Grid floating point word size is REALF"<< sizeof(RealF)<<std::endl;
 | 
				
			||||||
 | 
					  std::cout << "Grid floating point word size is REALD"<< sizeof(RealD)<<std::endl;
 | 
				
			||||||
 | 
					  std::cout << "Grid floating point word size is REAL"<< sizeof(Real)<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> seeds({1,2,3,4});
 | 
					  std::vector<int> seeds({1,2,3,4});
 | 
				
			||||||
  GridParallelRNG          pRNG(&Grid);
 | 
					  GridParallelRNG          pRNG(&Grid);
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										24
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								configure
									
									
									
									
										vendored
									
									
								
							@@ -751,6 +751,7 @@ enable_silent_rules
 | 
				
			|||||||
enable_dependency_tracking
 | 
					enable_dependency_tracking
 | 
				
			||||||
enable_openmp
 | 
					enable_openmp
 | 
				
			||||||
enable_simd
 | 
					enable_simd
 | 
				
			||||||
 | 
					enable_precision
 | 
				
			||||||
enable_comms
 | 
					enable_comms
 | 
				
			||||||
enable_doxygen
 | 
					enable_doxygen
 | 
				
			||||||
enable_dot
 | 
					enable_dot
 | 
				
			||||||
@@ -1398,6 +1399,8 @@ Optional Features:
 | 
				
			|||||||
  --enable-simd=SSE4|AVX|AVX2|AVX512|MIC
 | 
					  --enable-simd=SSE4|AVX|AVX2|AVX512|MIC
 | 
				
			||||||
                          Select instructions to be SSE4.0, AVX 1.0, AVX
 | 
					                          Select instructions to be SSE4.0, AVX 1.0, AVX
 | 
				
			||||||
                          2.0+FMA, AVX 512, MIC
 | 
					                          2.0+FMA, AVX 512, MIC
 | 
				
			||||||
 | 
					  --enable-precision=single|double
 | 
				
			||||||
 | 
					                          Select default word size of Real
 | 
				
			||||||
  --enable-comms=none|mpi Select communications
 | 
					  --enable-comms=none|mpi Select communications
 | 
				
			||||||
  --enable-doxygen        enable documentation generation with doxygen (auto)
 | 
					  --enable-doxygen        enable documentation generation with doxygen (auto)
 | 
				
			||||||
  --enable-dot            use 'dot' to generate graphs in doxygen (auto)
 | 
					  --enable-dot            use 'dot' to generate graphs in doxygen (auto)
 | 
				
			||||||
@@ -6728,6 +6731,27 @@ $as_echo "#define EMPTY_SIMD 1" >>confdefs.h
 | 
				
			|||||||
     ;;
 | 
					     ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Check whether --enable-precision was given.
 | 
				
			||||||
 | 
					if test "${enable_precision+set}" = set; then :
 | 
				
			||||||
 | 
					  enableval=$enable_precision; ac_PRECISION=${enable_precision}
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  ac_PRECISION=single
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					case ${ac_PRECISION} in
 | 
				
			||||||
 | 
					     single)
 | 
				
			||||||
 | 
					       echo default precision is single
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$as_echo "#define GRID_DEFAULT_PRECISION_SINGLE 1" >>confdefs.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     ;;
 | 
				
			||||||
 | 
					     double)
 | 
				
			||||||
 | 
					       echo default precision is double
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$as_echo "#define GRID_DEFAULT_PRECISION_DOUBLE 1" >>confdefs.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Check whether --enable-comms was given.
 | 
					# Check whether --enable-comms was given.
 | 
				
			||||||
if test "${enable_comms+set}" = set; then :
 | 
					if test "${enable_comms+set}" = set; then :
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										11
									
								
								configure.ac
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								configure.ac
									
									
									
									
									
								
							@@ -120,6 +120,17 @@ case ${ac_SIMD} in
 | 
				
			|||||||
     ;;
 | 
					     ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					AC_ARG_ENABLE([precision],[AC_HELP_STRING([--enable-precision=single|double],[Select default word size of Real])],[ac_PRECISION=${enable_precision}],[ac_PRECISION=single])
 | 
				
			||||||
 | 
					case ${ac_PRECISION} in
 | 
				
			||||||
 | 
					     single)
 | 
				
			||||||
 | 
					       echo default precision is single
 | 
				
			||||||
 | 
					       AC_DEFINE([GRID_DEFAULT_PRECISION_SINGLE],[1],[GRID_DEFAULT_PRECISION is SINGLE] )
 | 
				
			||||||
 | 
					     ;;
 | 
				
			||||||
 | 
					     double)
 | 
				
			||||||
 | 
					       echo default precision is double
 | 
				
			||||||
 | 
					       AC_DEFINE([GRID_DEFAULT_PRECISION_DOUBLE],[1],[GRID_DEFAULT_PRECISION is DOUBLE] )
 | 
				
			||||||
 | 
					     ;;
 | 
				
			||||||
 | 
					esac
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AC_ARG_ENABLE([comms],[AC_HELP_STRING([--enable-comms=none|mpi],[Select communications])],[ac_COMMS=${enable_comms}],[ac_COMMS=none])
 | 
					AC_ARG_ENABLE([comms],[AC_HELP_STRING([--enable-comms=none|mpi],[Select communications])],[ac_COMMS=${enable_comms}],[ac_COMMS=none])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,6 +18,12 @@
 | 
				
			|||||||
/* GRID_COMMS_NONE */
 | 
					/* GRID_COMMS_NONE */
 | 
				
			||||||
#undef GRID_COMMS_NONE
 | 
					#undef GRID_COMMS_NONE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* GRID_DEFAULT_PRECISION is DOUBLE */
 | 
				
			||||||
 | 
					#undef GRID_DEFAULT_PRECISION_DOUBLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* GRID_DEFAULT_PRECISION is SINGLE */
 | 
				
			||||||
 | 
					#undef GRID_DEFAULT_PRECISION_SINGLE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Support Altivec instructions */
 | 
					/* Support Altivec instructions */
 | 
				
			||||||
#undef HAVE_ALTIVEC
 | 
					#undef HAVE_ALTIVEC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,7 +17,6 @@ namespace Grid {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  typedef  float  RealF;
 | 
					  typedef  float  RealF;
 | 
				
			||||||
  typedef  double RealD;
 | 
					  typedef  double RealD;
 | 
				
			||||||
#define GRID_DEFAULT_PRECISION_DOUBLE
 | 
					 | 
				
			||||||
#ifdef GRID_DEFAULT_PRECISION_DOUBLE
 | 
					#ifdef GRID_DEFAULT_PRECISION_DOUBLE
 | 
				
			||||||
  typedef RealD   Real;
 | 
					  typedef RealD   Real;
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -33,7 +33,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  std::vector<int> latt_size  ({16,16,16,32});
 | 
					  std::vector<int> latt_size  ({16,16,16,32});
 | 
				
			||||||
  std::vector<int> clatt_size  ({4,4,4,8});
 | 
					  std::vector<int> clatt_size  ({4,4,4,8});
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -55,7 +55,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
					  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -23,7 +23,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
@@ -34,7 +34,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  for(int d=0;d<clatt.size();d++){
 | 
					  for(int d=0;d<clatt.size();d++){
 | 
				
			||||||
    clatt[d] = clatt[d]/2;
 | 
					    clatt[d] = clatt[d]/2;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  GridCartesian *Coarse4d =  SpaceTimeGrid::makeFourDimGrid(clatt, GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());;
 | 
					  GridCartesian *Coarse4d =  SpaceTimeGrid::makeFourDimGrid(clatt, GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());;
 | 
				
			||||||
  GridCartesian *Coarse5d =  SpaceTimeGrid::makeFiveDimGrid(1,Coarse4d);
 | 
					  GridCartesian *Coarse5d =  SpaceTimeGrid::makeFiveDimGrid(1,Coarse4d);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> seeds4({1,2,3,4});
 | 
					  std::vector<int> seeds4({1,2,3,4});
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -32,7 +32,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
					  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -10,7 +10,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
@@ -23,7 +23,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  for(int d=0;d<clatt.size();d++){
 | 
					  for(int d=0;d<clatt.size();d++){
 | 
				
			||||||
    clatt[d] = clatt[d]/2;
 | 
					    clatt[d] = clatt[d]/2;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  GridCartesian *Coarse4d =  SpaceTimeGrid::makeFourDimGrid(clatt, GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());;
 | 
					  GridCartesian *Coarse4d =  SpaceTimeGrid::makeFourDimGrid(clatt, GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());;
 | 
				
			||||||
  GridCartesian *Coarse5d =  SpaceTimeGrid::makeFiveDimGrid(1,Coarse4d);
 | 
					  GridCartesian *Coarse5d =  SpaceTimeGrid::makeFiveDimGrid(1,Coarse4d);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> seeds4({1,2,3,4});
 | 
					  std::vector<int> seeds4({1,2,3,4});
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=9;
 | 
					  const int Ls=9;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=9;
 | 
					  const int Ls=9;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -56,7 +56,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
					  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int Ls=9;
 | 
					  const int Ls=9;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -32,7 +32,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
					  std::cout << "Grid is setup to use "<<threads<<" threads"<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int Ls=9;
 | 
					  const int Ls=9;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,7 +8,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian        Fine(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian        Fine(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -9,7 +9,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  int Nd = latt_size.size();
 | 
					  int Nd = latt_size.size();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> mask(Nd,1);
 | 
					  std::vector<int> mask(Nd,1);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -25,7 +25,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -26,7 +26,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -25,7 +25,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int Ls=8;
 | 
					  const int Ls=8;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplexF::Nsimd()),GridDefaultMpi());
 | 
					  GridCartesian         * UGrid   = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), GridDefaultSimd(Nd,vComplex::Nsimd()),GridDefaultMpi());
 | 
				
			||||||
  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
					  GridRedBlackCartesian * UrbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(UGrid);
 | 
				
			||||||
  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
					  GridCartesian         * FGrid   = SpaceTimeGrid::makeFiveDimGrid(Ls,UGrid);
 | 
				
			||||||
  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
					  GridRedBlackCartesian * FrbGrid = SpaceTimeGrid::makeFiveDimRedBlackGrid(Ls,UGrid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,7 +14,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
     
 | 
					     
 | 
				
			||||||
  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,7 +15,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt({4,4,4,8});
 | 
					  std::vector<int> latt({4,4,4,8});
 | 
				
			||||||
  GridCartesian * grid = SpaceTimeGrid::makeFourDimGrid(latt, 
 | 
					  GridCartesian * grid = SpaceTimeGrid::makeFourDimGrid(latt, 
 | 
				
			||||||
							GridDefaultSimd(Nd,vComplexF::Nsimd()),
 | 
												GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
				
			||||||
							GridDefaultMpi());
 | 
												GridDefaultMpi());
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  GridRedBlackCartesian * rbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(grid);
 | 
					  GridRedBlackCartesian * rbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(grid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,7 +27,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  latt_size.resize(4);
 | 
					  latt_size.resize(4);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -56,7 +56,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  GridCartesian *grid = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), 
 | 
					  GridCartesian *grid = SpaceTimeGrid::makeFourDimGrid(GridDefaultLatt(), 
 | 
				
			||||||
						       GridDefaultSimd(Nd,vComplexF::Nsimd()),
 | 
											       GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
				
			||||||
						       GridDefaultMpi());
 | 
											       GridDefaultMpi());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  double     lo=0.001;
 | 
					  double     lo=0.001;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,7 +14,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt({8,8,8,8});
 | 
					  std::vector<int> latt({8,8,8,8});
 | 
				
			||||||
  GridCartesian * grid = SpaceTimeGrid::makeFourDimGrid(latt, 
 | 
					  GridCartesian * grid = SpaceTimeGrid::makeFourDimGrid(latt, 
 | 
				
			||||||
							GridDefaultSimd(Nd,vComplexF::Nsimd()),
 | 
												GridDefaultSimd(Nd,vComplex::Nsimd()),
 | 
				
			||||||
							GridDefaultMpi());
 | 
												GridDefaultMpi());
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
  GridRedBlackCartesian * rbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(grid);
 | 
					  GridRedBlackCartesian * rbGrid = SpaceTimeGrid::makeFourDimRedBlackGrid(grid);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -9,7 +9,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
     
 | 
					     
 | 
				
			||||||
  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -9,7 +9,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
     
 | 
					     
 | 
				
			||||||
  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -185,7 +185,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(4,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(4,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian     Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -10,7 +10,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  double volume = latt_size[0]*latt_size[1]*latt_size[2]*latt_size[3];
 | 
					  double volume = latt_size[0]*latt_size[1]*latt_size[2]*latt_size[3];
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,7 +21,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,7 +21,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Grid_init(&argc,&argv);
 | 
					  Grid_init(&argc,&argv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  std::vector<int> latt_size   = GridDefaultLatt();
 | 
					  std::vector<int> latt_size   = GridDefaultLatt();
 | 
				
			||||||
  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplexF::Nsimd());
 | 
					  std::vector<int> simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
 | 
				
			||||||
  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
					  std::vector<int> mpi_layout  = GridDefaultMpi();
 | 
				
			||||||
  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
					  GridCartesian               Grid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
					  GridRedBlackCartesian     RBGrid(latt_size,simd_layout,mpi_layout);
 | 
				
			||||||
@@ -55,7 +55,9 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  Umu=zero;
 | 
					  Umu=zero;
 | 
				
			||||||
  for(int nn=0;nn<Nd;nn++){
 | 
					  for(int nn=0;nn<Nd;nn++){
 | 
				
			||||||
    random(pRNG,U[nn]);
 | 
					    random(pRNG,U[nn]);
 | 
				
			||||||
 | 
					    std::cout<<"U[nn]"<<norm2(U[nn])<<std::endl;
 | 
				
			||||||
    PokeIndex<LorentzIndex>(Umu,U[nn],nn);
 | 
					    PokeIndex<LorentzIndex>(Umu,U[nn],nn);
 | 
				
			||||||
 | 
					    std::cout<<"Umu"<<norm2(Umu)<<std::endl;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  RealD mass=0.1;
 | 
					  RealD mass=0.1;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user