Actual source code: PetscMemzero.c

 2:  #include petsc.h

  6: int main(int argc,char **argv)
  7: {
  8:   PetscLogDouble x,y,z;
  9:   PetscScalar    A[10000];
 10:   int            ierr;

 12:   PetscInitialize(&argc,&argv,0,0);
 13:   /* To take care of paging effects */
 14:   PetscMemzero(A,sizeof(PetscScalar)*0);
 15:   PetscGetTime(&x);

 17:   PetscGetTime(&x);
 18:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 19:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 20:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 21:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 22:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 23:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 24:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 25:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 26:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 27:   PetscMemzero(A,sizeof(PetscScalar)*10000);
 28:   PetscGetTime(&y);
 29:   PetscMemzero(A,sizeof(PetscScalar)*0);
 30:   PetscMemzero(A,sizeof(PetscScalar)*0);
 31:   PetscMemzero(A,sizeof(PetscScalar)*0);
 32:   PetscMemzero(A,sizeof(PetscScalar)*0);
 33:   PetscMemzero(A,sizeof(PetscScalar)*0);
 34:   PetscMemzero(A,sizeof(PetscScalar)*0);
 35:   PetscMemzero(A,sizeof(PetscScalar)*0);
 36:   PetscMemzero(A,sizeof(PetscScalar)*0);
 37:   PetscMemzero(A,sizeof(PetscScalar)*0);
 38:   PetscMemzero(A,sizeof(PetscScalar)*0);
 39:   PetscGetTime(&z);

 41:   fprintf(stdout,"%s : \n","PetscMemzero");
 42:   fprintf(stdout,"    %-15s : %e sec\n","Latency",(z-y)/10.0);
 43:   fprintf(stdout,"    %-15s : %e sec\n","Per PetscScalar",(2*y-x-z)/100000.0);

 45:   PetscFinalize();
 46:   return(0);
 47: }