xref: /petsc/src/benchmarks/PetscVecNorm.c (revision b0a32e0c6855ee6a6cd3495fa7da12ea9885bc5d)
1 /*$Id: PetscVecNorm.c,v 1.11 2000/05/05 22:20:03 balay Exp bsmith $*/
2 
3 #include "petscvec.h"
4 
5 #undef __FUNC__
6 #define __FUNC__ "main"
7 int main(int argc,char **argv)
8 {
9   Vec        x;
10   double     norm;
11   PetscLogDouble t1,t2;
12   int        ierr,n = 10000;
13 
14   PetscInitialize(&argc,&argv,0,0);
15   ierr = PetscOptionsGetInt(PETSC_NULL,"-n",&n,PETSC_NULL);CHKERRA(ierr);
16 
17   ierr = VecCreateSeq(PETSC_COMM_SELF,n,&x);CHKERRA(ierr);
18 
19   /* To take care of paging effects */
20   ierr = PetscGetTime(&t1);CHKERRA(ierr);
21   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
22 
23   ierr = PetscGetTime(&t1);CHKERRA(ierr);
24   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
25   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
26   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
27   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
28   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
29   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
30   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
31   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
32   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
33   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
34   ierr = PetscGetTime(&t2);CHKERRA(ierr);
35   ierr = VecNorm(x,NORM_2,&norm);CHKERRA(ierr);
36 
37   fprintf(stderr,"%s : \n","PetscMemcpy");
38   fprintf(stderr," Time %g\n",t2-t1);
39 
40   PetscFinalize();
41   PetscFunctionReturn(0);
42 }
43