mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Changes to interface a little
This commit is contained in:
		@@ -511,6 +511,7 @@ void ExchangeTester(const functor &func)
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    //    assert(found==1);
 | 
					    //    assert(found==1);
 | 
				
			||||||
 | 
					    assert(found==1||found==0);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  for(int i=0;i<Nsimd;i++){
 | 
					  for(int i=0;i<Nsimd;i++){
 | 
				
			||||||
    int found=0;
 | 
					    int found=0;
 | 
				
			||||||
@@ -521,6 +522,7 @@ void ExchangeTester(const functor &func)
 | 
				
			|||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    //    assert(found==1);
 | 
					    //    assert(found==1);
 | 
				
			||||||
 | 
					    assert(found==1||found==0);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /*
 | 
					  /*
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -70,7 +70,6 @@ int main(int argc, char ** argv) {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
  Integer stride =1000;
 | 
					  Integer stride =1000;
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
    double nrm;
 | 
					 | 
				
			||||||
    LatticeComplex coor(&Fine);
 | 
					    LatticeComplex coor(&Fine);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    for(int d=0;d<Nd;d++){
 | 
					    for(int d=0;d<Nd;d++){
 | 
				
			||||||
@@ -150,7 +149,7 @@ int main(int argc, char ** argv) {
 | 
				
			|||||||
	}}}}
 | 
						}}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (nrm > 1.0e-4) {
 | 
						if (nrm > 1.0e-4) {
 | 
				
			||||||
	  for(int i=0;i<Check._odata.size();i++){
 | 
						  for(int i=0;i<Check._odata_size;i++){
 | 
				
			||||||
	    std::cout << i<<" Check.odata "<<Check._odata[i]<< "\n"<<i<<" Bar.odata "<<Bar._odata[i]<<std::endl;
 | 
						    std::cout << i<<" Check.odata "<<Check._odata[i]<< "\n"<<i<<" Bar.odata "<<Bar._odata[i]<<std::endl;
 | 
				
			||||||
	  }
 | 
						  }
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -450,7 +450,7 @@ int main(int argc, char **argv) {
 | 
				
			|||||||
      double t0, t1, flops;
 | 
					      double t0, t1, flops;
 | 
				
			||||||
      double bytes;
 | 
					      double bytes;
 | 
				
			||||||
      int ncall = 5000;
 | 
					      int ncall = 5000;
 | 
				
			||||||
      int Nc = Grid::QCD::Nc;
 | 
					      int Nc = Grid::Nc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      LatticeGaugeField U(&Fine);
 | 
					      LatticeGaugeField U(&Fine);
 | 
				
			||||||
      //    LatticeColourMatrix Uy = peekLorentz(U,1);
 | 
					      //    LatticeColourMatrix Uy = peekLorentz(U,1);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -129,9 +129,9 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  std::cout<<GridLogMessage << "Calling vectorised staggered operator"<<std::endl;
 | 
					  std::cout<<GridLogMessage << "Calling vectorised staggered operator"<<std::endl;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef AVX512
 | 
					#ifdef AVX512
 | 
				
			||||||
  QCD::StaggeredKernelsStatic::Opt=QCD::StaggeredKernelsStatic::OptInlineAsm;
 | 
					  StaggeredKernelsStatic::Opt=StaggeredKernelsStatic::OptInlineAsm;
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
  QCD::StaggeredKernelsStatic::Opt=QCD::StaggeredKernelsStatic::OptGeneric;
 | 
					  StaggeredKernelsStatic::Opt=StaggeredKernelsStatic::OptGeneric;
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  t0=usecond();
 | 
					  t0=usecond();
 | 
				
			||||||
@@ -151,7 +151,7 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  FermionField ssrc  (sFGrid);  localConvert(src,ssrc);
 | 
					  FermionField ssrc  (sFGrid);  localConvert(src,ssrc);
 | 
				
			||||||
  FermionField sresult(sFGrid); sresult=zero;
 | 
					  FermionField sresult(sFGrid); sresult=zero;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  QCD::StaggeredKernelsStatic::Opt=QCD::StaggeredKernelsStatic::OptHandUnroll;
 | 
					  StaggeredKernelsStatic::Opt=StaggeredKernelsStatic::OptHandUnroll;
 | 
				
			||||||
  t0=usecond();
 | 
					  t0=usecond();
 | 
				
			||||||
  for(int i=0;i<ncall1;i++){
 | 
					  for(int i=0;i<ncall1;i++){
 | 
				
			||||||
    sDs.Dhop(ssrc,sresult,0);
 | 
					    sDs.Dhop(ssrc,sresult,0);
 | 
				
			||||||
@@ -165,9 +165,9 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef AVX512
 | 
					#ifdef AVX512
 | 
				
			||||||
  QCD::StaggeredKernelsStatic::Opt=QCD::StaggeredKernelsStatic::OptInlineAsm;
 | 
					  StaggeredKernelsStatic::Opt=StaggeredKernelsStatic::OptInlineAsm;
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
  QCD::StaggeredKernelsStatic::Opt=QCD::StaggeredKernelsStatic::OptGeneric;
 | 
					  StaggeredKernelsStatic::Opt=StaggeredKernelsStatic::OptGeneric;
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  err = tmp-result; 
 | 
					  err = tmp-result; 
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -70,7 +70,8 @@ int main (int argc, char ** argv)
 | 
				
			|||||||
  LatticeFermion    ref(&Grid);    ref=zero;
 | 
					  LatticeFermion    ref(&Grid);    ref=zero;
 | 
				
			||||||
  LatticeFermion    tmp(&Grid);    tmp=zero;
 | 
					  LatticeFermion    tmp(&Grid);    tmp=zero;
 | 
				
			||||||
  LatticeFermion    err(&Grid);    tmp=zero;
 | 
					  LatticeFermion    err(&Grid);    tmp=zero;
 | 
				
			||||||
  LatticeGaugeField Umu(&Grid); SU3::HotConfiguration(pRNG,Umu);
 | 
					  LatticeGaugeField Umu(&Grid); 
 | 
				
			||||||
 | 
					  SU3::HotConfiguration(pRNG,Umu);
 | 
				
			||||||
  std::vector<LatticeColourMatrix> U(4,&Grid);
 | 
					  std::vector<LatticeColourMatrix> U(4,&Grid);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  double volume=1;
 | 
					  double volume=1;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user