xref: /petsc/src/benchmarks/PetscMemcmp.c (revision b4d8b9abfc967e8f3c9331284eb41aa08b1075bc)
1*b4d8b9abSSatish Balay /*$Id: PetscMemcmp.c,v 1.22 2001/08/29 20:27:57 balay Exp balay $*/
2d8e9fea7SSatish Balay 
3b0878937SSatish Balay #include "petsc.h"
4b0878937SSatish Balay 
54a2ae208SSatish Balay #undef __FUNCT__
64a2ae208SSatish Balay #define __FUNCT__ "main"
7b0878937SSatish Balay int main(int argc,char **argv)
8b0878937SSatish Balay {
9b0a32e0cSBarry Smith   PetscLogDouble x,y,z;
10ea709b57SSatish Balay   PetscScalar    A[10000],B[10000];
11d3093643SSatish Balay   int            i,ierr;
124115e8b9SSatish Balay   PetscTruth     flg;
13b0878937SSatish Balay 
1477c4ece6SBarry Smith   PetscInitialize(&argc,&argv,0,0);
15b0878937SSatish Balay 
16b0878937SSatish Balay   for (i=0; i<10000; i++) {
17b0878937SSatish Balay     A[i] = i%61897;
18b0878937SSatish Balay     B[i] = i%61897;
19b0878937SSatish Balay   }
20b0878937SSatish Balay   /* To take care of paging effects */
214115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
22ac355199SBarry Smith   ierr = PetscGetTime(&x);CHKERRQ(ierr);
23b0878937SSatish Balay 
24ac355199SBarry Smith   ierr = PetscGetTime(&x);CHKERRQ(ierr);
254115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
264115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
274115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
284115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
294115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
304115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
314115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
324115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
334115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
344115e8b9SSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*10000,&flg);
35ac355199SBarry Smith   ierr = PetscGetTime(&y);CHKERRQ(ierr);
369ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
379ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
389ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
399ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
409ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
419ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
429ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
439ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
449ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
459ae0b57aSSatish Balay   PetscMemcmp(A,B,sizeof(PetscScalar)*0,&flg);
46ac355199SBarry Smith   ierr = PetscGetTime(&z);CHKERRQ(ierr);
47b0878937SSatish Balay 
4835d8aa7fSBarry Smith   fprintf(stdout,"%s : \n","PetscMemcmp");
49*b4d8b9abSSatish Balay   fprintf(stdout,"    %-15s : %e sec\n","Latency",(z-y)/10.0);
50*b4d8b9abSSatish Balay   fprintf(stdout,"    %-15s : %e sec\n","Per PetscScalar",(2*y-x-z)/100000);
51b0878937SSatish Balay 
522b7fea2aSSatish Balay   ierr = PetscFinalize();CHKERRQ(ierr);
533a40ed3dSBarry Smith   PetscFunctionReturn(0);
54b0878937SSatish Balay }
55