1 /*$Id: PetscVecNorm.c,v 1.15 2001/03/23 23:25:45 balay Exp balay $*/ 2 3 #include "petscvec.h" 4 5 #undef __FUNCT__ 6 #define __FUNCT__ "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);CHKERRQ(ierr); 16 17 ierr = VecCreateSeq(PETSC_COMM_SELF,n,&x);CHKERRQ(ierr); 18 19 /* To take care of paging effects */ 20 ierr = PetscGetTime(&t1);CHKERRQ(ierr); 21 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 22 23 ierr = PetscGetTime(&t1);CHKERRQ(ierr); 24 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 25 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 26 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 27 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 28 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 29 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 30 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 31 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 32 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 33 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 34 ierr = PetscGetTime(&t2);CHKERRQ(ierr); 35 ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr); 36 37 fprintf(stdout,"%s : \n","PetscMemcpy"); 38 fprintf(stdout," Time %g\n",t2-t1); 39 40 ierr = PetscFinalize();CHKERRQ(ierr); 41 PetscFunctionReturn(0); 42 } 43