mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Tracing replaces self timing hooks
This commit is contained in:
		@@ -420,7 +420,6 @@ public:
 | 
			
		||||
	FGrid->Broadcast(0,&ncall,sizeof(ncall));
 | 
			
		||||
 | 
			
		||||
	//	std::cout << GridLogMessage << " Estimate " << ncall << " calls per second"<<std::endl;
 | 
			
		||||
	Dw.ZeroCounters();
 | 
			
		||||
 | 
			
		||||
	time_statistics timestat;
 | 
			
		||||
	std::vector<double> t_time(ncall);
 | 
			
		||||
@@ -589,7 +588,6 @@ public:
 | 
			
		||||
	FGrid->Broadcast(0,&ncall,sizeof(ncall));
 | 
			
		||||
 | 
			
		||||
	//	std::cout << GridLogMessage << " Estimate " << ncall << " calls per second"<<std::endl;
 | 
			
		||||
	Ds.ZeroCounters();
 | 
			
		||||
 | 
			
		||||
	time_statistics timestat;
 | 
			
		||||
	std::vector<double> t_time(ncall);
 | 
			
		||||
 
 | 
			
		||||
@@ -186,7 +186,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
 | 
			
		||||
  if (1) {
 | 
			
		||||
    FGrid->Barrier();
 | 
			
		||||
    Dw.ZeroCounters();
 | 
			
		||||
    Dw.Dhop(src,result,0);
 | 
			
		||||
    std::cout<<GridLogMessage<<"Called warmup"<<std::endl;
 | 
			
		||||
    double t0=usecond();
 | 
			
		||||
@@ -231,7 +230,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
      exit(-1);
 | 
			
		||||
    }
 | 
			
		||||
    assert (norm2(err)< 1.0e-4 );
 | 
			
		||||
    Dw.Report();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  if (1)
 | 
			
		||||
@@ -306,7 +304,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  if ( WilsonKernelsStatic::Opt == WilsonKernelsStatic::OptInlineAsm ) std::cout << GridLogMessage<< "* Using Asm Nc=3   WilsonKernels" <<std::endl;
 | 
			
		||||
  std::cout << GridLogMessage<< "*********************************************************" <<std::endl;
 | 
			
		||||
  {
 | 
			
		||||
    Dw.ZeroCounters();
 | 
			
		||||
    FGrid->Barrier();
 | 
			
		||||
    Dw.DhopEO(src_o,r_e,DaggerNo);
 | 
			
		||||
    double t0=usecond();
 | 
			
		||||
@@ -328,7 +325,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
    std::cout<<GridLogMessage << "Deo mflop/s =   "<< flops/(t1-t0)<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "Deo mflop/s per rank   "<< flops/(t1-t0)/NP<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "Deo mflop/s per node   "<< flops/(t1-t0)/NN<<std::endl;
 | 
			
		||||
    Dw.Report();
 | 
			
		||||
  }
 | 
			
		||||
  Dw.DhopEO(src_o,r_e,DaggerNo);
 | 
			
		||||
  Dw.DhopOE(src_e,r_o,DaggerNo);
 | 
			
		||||
 
 | 
			
		||||
@@ -93,7 +93,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  int ncall =1000;
 | 
			
		||||
  if (1) {
 | 
			
		||||
    FGrid->Barrier();
 | 
			
		||||
    Dw.ZeroCounters();
 | 
			
		||||
    Dw.Dhop(src,result,0);
 | 
			
		||||
    std::cout<<GridLogMessage<<"Called warmup"<<std::endl;
 | 
			
		||||
    double t0=usecond();
 | 
			
		||||
@@ -112,7 +111,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s =   "<< flops/(t1-t0)<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s per rank =  "<< flops/(t1-t0)/NP<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s per node =  "<< flops/(t1-t0)/NN<<std::endl;
 | 
			
		||||
    Dw.Report();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -134,7 +132,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  GparityDomainWallFermionD DwD(Umu_d,*FGrid_d,*FrbGrid_d,*UGrid_d,*UrbGrid_d,mass,M5);
 | 
			
		||||
  if (1) {
 | 
			
		||||
    FGrid_d->Barrier();
 | 
			
		||||
    DwD.ZeroCounters();
 | 
			
		||||
    DwD.Dhop(src_d,result_d,0);
 | 
			
		||||
    std::cout<<GridLogMessage<<"Called warmup"<<std::endl;
 | 
			
		||||
    double t0=usecond();
 | 
			
		||||
@@ -153,7 +150,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s =   "<< flops/(t1-t0)<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s per rank =  "<< flops/(t1-t0)/NP<<std::endl;
 | 
			
		||||
    std::cout<<GridLogMessage << "mflop/s per node =  "<< flops/(t1-t0)/NN<<std::endl;
 | 
			
		||||
    DwD.Report();
 | 
			
		||||
  }
 | 
			
		||||
#endif
 | 
			
		||||
  Grid_finalize();
 | 
			
		||||
 
 | 
			
		||||
@@ -103,35 +103,30 @@ int main (int argc, char ** argv)
 | 
			
		||||
#define BENCH_DW(A,...)			\
 | 
			
		||||
    Dw. A (__VA_ARGS__);				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    Dw.CayleyZeroCounters();      \
 | 
			
		||||
    t0=usecond();				\
 | 
			
		||||
    for(int i=0;i<ncall;i++){			\
 | 
			
		||||
      Dw. A (__VA_ARGS__);				\
 | 
			
		||||
    }						\
 | 
			
		||||
    t1=usecond();				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    Dw.CayleyReport();					\
 | 
			
		||||
    std::cout<<GridLogMessage << "Called " #A " "<< (t1-t0)/ncall<<" us"<<std::endl;\
 | 
			
		||||
    std::cout<<GridLogMessage << "******************"<<std::endl;
 | 
			
		||||
 | 
			
		||||
#define BENCH_ZDW(A,in,out)			\
 | 
			
		||||
    zDw. A (in,out);				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    zDw.CayleyZeroCounters();      \
 | 
			
		||||
    t0=usecond();				\
 | 
			
		||||
    for(int i=0;i<ncall;i++){			\
 | 
			
		||||
      zDw. A (in,out);				\
 | 
			
		||||
    }						\
 | 
			
		||||
    t1=usecond();				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    zDw.CayleyReport();							\
 | 
			
		||||
    std::cout<<GridLogMessage << "Called ZDw " #A " "<< (t1-t0)/ncall<<" us"<<std::endl;\
 | 
			
		||||
    std::cout<<GridLogMessage << "******************"<<std::endl;
 | 
			
		||||
 | 
			
		||||
#define BENCH_DW_SSC(A,in,out)			\
 | 
			
		||||
    Dw. A (in,out);				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    Dw.CayleyZeroCounters();      \
 | 
			
		||||
    t0=usecond();				\
 | 
			
		||||
    for(int i=0;i<ncall;i++){			\
 | 
			
		||||
      __SSC_START ;				\
 | 
			
		||||
@@ -140,7 +135,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
    }						\
 | 
			
		||||
    t1=usecond();				\
 | 
			
		||||
    FGrid->Barrier();				\
 | 
			
		||||
    Dw.CayleyReport();					\
 | 
			
		||||
    std::cout<<GridLogMessage << "Called " #A " "<< (t1-t0)/ncall<<" us"<<std::endl;\
 | 
			
		||||
    std::cout<<GridLogMessage << "******************"<<std::endl;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -155,7 +155,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  //int ncall=1;
 | 
			
		||||
 | 
			
		||||
  // Counters
 | 
			
		||||
  Dw.ZeroCounters();
 | 
			
		||||
  Grid.Barrier();
 | 
			
		||||
 | 
			
		||||
  double t0=usecond();
 | 
			
		||||
@@ -201,7 +200,6 @@ int main (int argc, char ** argv)
 | 
			
		||||
  err = ref-result;
 | 
			
		||||
  std::cout<<GridLogMessage << "norm diff   "<< norm2(err)<<std::endl;
 | 
			
		||||
 | 
			
		||||
  Dw.Report();
 | 
			
		||||
  
 | 
			
		||||
  // guard
 | 
			
		||||
  double err0 = norm2(err);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user