printf("Timing of D_psi (random spinor and gauge fields)\n");
printf("Timing of Hopping_Matrix (random spinor and gauge fields)\n");
int main(int argc,char *argv[]){  int i,k,kmax,n,count;  float t1,t2,dt;  double m0;#if defined MPI  MPI_Init(&argc, &argv);  MPI_Comm_size(MPI_COMM_WORLD, &g_nproc);  MPI_Comm_rank(MPI_COMM_WORLD, &g_proc_id);  g_cart_grid = MPI_COMM_WORLD;  if(g_proc_id == 0) {    printf("g_proc_id=%d g_nproc=%d \n",	   g_proc_id,g_nproc);  }#else  g_proc_id = 0;  g_nproc = 1;#endif  if(g_proc_id == 0) {    printf("\n");    printf("Timing of D_psi (random spinor and gauge fields)\n");    printf("------------------------------------------------\n");        printf("\n");    printf("The lattice size is %d x %d^3\n\n",T*g_nproc, L);  }  kmax=((int)(CACHE_SIZE))/(96*(int)(VOLUME));  if (kmax==0){    kmax=1;  }  if(kmax>10){    kmax=10;  }  n=1000000/(int)(VOLUME/2);  if (n<2){    n=2;  }  g_kappa = 0.125;  g_mu = 0.1;  rlxd_init(1,123456);     geometry();  boundary();  random_gauge_field();#if defined MPI  xchange_gauge();#endif  for (k=0;k<2*kmax;k++){    random_spinor_field(k);  }  k=0;  t1=(float)clock();  for (count=0;count<n;count++){          Hopping_Matrix(EO, k+kmax, k);    k++;    if (k==kmax){      k=0;    }  }        t2=(float)clock();  dt=(t2-t1)/((float)(CLOCKS_PER_SEC));  dt=1.0e6f*dt/((float)(n*(VOLUME/2)));  printf("Time per lattice point: %4.3f micro sec",dt);  printf(" (%d Mflops [%d bit arithmetic])\n",	 (int)(1392.0f/dt),(int)sizeof(spinor)/3);     printf("\n");#if defined MPI   MPI_Finalize();#endif  return(0);}