1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-17 15:27:06 +01:00
This commit is contained in:
meifeng
2024-02-28 13:59:24 -05:00
committed by GitHub
26 changed files with 15427 additions and 41 deletions

View File

@ -84,7 +84,7 @@ int main (int argc, char ** argv)
GridParallelRNG RNG5(FGrid); RNG5.SeedUniqueString(std::string("The 5D RNG"));
std::cout << GridLogMessage << "Initialised RNGs" << std::endl;
LatticeFermion src (FGrid); random(RNG5,src);
LatticeFermion src (FGrid); random(RNG5,src);
#if 0
src = Zero();
{
@ -96,7 +96,9 @@ int main (int argc, char ** argv)
pokeSite(tmp,src,origin);
}
#else
std::cout << GridLogMessage << "Drawing gauge field1" << std::endl;
RealD N2 = 1.0/::sqrt(norm2(src));
std::cout << GridLogMessage << "Drawing gauge field3" << std::endl;
src = src*N2;
#endif
@ -215,8 +217,12 @@ int main (int argc, char ** argv)
std::cout<<GridLogMessage << "mflop/s per node = "<< flops/(t1-t0)/NN<<std::endl;
std::cout<<GridLogMessage << "RF GiB/s (base 2) = "<< 1000000. * data_rf/((t1-t0))<<std::endl;
std::cout<<GridLogMessage << "mem GiB/s (base 2) = "<< 1000000. * data_mem/((t1-t0))<<std::endl;
err = ref-result;
std::cout<<GridLogMessage << "norm diff "<< norm2(err)<<std::endl;
//#pragma omp target is_device_ptr ( err.View(CpuWrite), ref.View(CpuWrite), result.View(CpuWrite) )
ref-result;
//err = ref-result;
std::cout<<GridLogMessage << "norm diff 0 "<<std::endl;
std::cout<<GridLogMessage << "norm diff "<< norm2(err) << " norm diff 1 " <<std::endl;
//exit(0);
if(( norm2(err)>1.0e-4) ) {

View File

@ -36,19 +36,22 @@ int main (int argc, char ** argv)
{
Grid_init(&argc,&argv);
#define LMAX (40)
#define LMAX (8)
#define LMIN (8)
#define LADD (8)
int64_t Nwarm=10;
int64_t Nloop=100;
int64_t Nwarm=500;
int64_t Nloop=1500;
Coordinate simd_layout = GridDefaultSimd(Nd,vComplex::Nsimd());
Coordinate mpi_layout = GridDefaultMpi();
int64_t threads = GridThread::GetThreads();
std::cout<<GridLogMessage << "Grid is setup to use "<<threads<<" threads"<<std::endl;
int64_t accelerator_threads = acceleratorThreads();
std::cout<<GridLogMessage << "Grid is setup with LMAX="<< LMAX << ", LMIN=" << LMIN << ", LADD=" << LADD << ", Nwarm, Nloop =" << Nwarm <<"," << Nloop <<std::endl;
std::cout<<GridLogMessage << "Grid is setup to use "<<threads<<" threads"<<std::endl;
std::cout<<GridLogMessage << "Grid is setup to use "<<accelerator_threads<<" GPU threads"<<std::endl;
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;
std::cout<<GridLogMessage << "= Benchmarking SU3xSU3 x= x*y"<<std::endl;
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;
@ -222,6 +225,7 @@ int main (int argc, char ** argv)
}
#if 1
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;
std::cout<<GridLogMessage << "= Benchmarking SU3xSU3 CovShiftForward(z,x,y)"<<std::endl;
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;
@ -254,7 +258,9 @@ int main (int argc, char ** argv)
std::cout<<GridLogMessage<<std::setprecision(3) << lat<<"\t\t"<<bytes<<" \t\t"<<bytes/time<<"\t\t" << flops/time<<std::endl;
}
}
#if 1
#endif
#if 0
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;
std::cout<<GridLogMessage << "= Benchmarking SU3xSU3 z= x * Cshift(y)"<<std::endl;
std::cout<<GridLogMessage << "===================================================================================================="<<std::endl;