<div dir="ltr"><div><br></div><div>Hello Petsc developers and supporters,<br><br>I would like to confirm the performance of asynchronous computations of inner product computation overlapping with matrix-vector multiplication computation by the below code.<br></div><div><br></div><div><br></div><font color="#0000ff"> PetscLogDouble tt1,tt2;<br>    KSP ksp;<br>    //ierr = VecSet(c,one);<br>    ierr = VecSet(c,one);<br>    ierr = VecSet(u,one);<br>    ierr = VecSet(b,one);<br><br>    ierr = KSPCreate(PETSC_COMM_WORLD,&ksp); CHKERRQ(ierr);<br>    ierr = KSP_MatMult(ksp,A,x,Ax); CHKERRQ(ierr);<br><br><br>    ierr = PetscTime(&tt1);CHKERRQ(ierr);<br>    ierr = VecNormBegin(u,NORM_2,&norm1);<br>    ierr = PetscCommSplitReductionBegin(PetscObjectComm((PetscObject)Ax)); <br>    ierr = KSP_MatMult(ksp,A,c,Ac); <br>    ierr = VecNormEnd(u,NORM_2,&norm1);<br>    ierr = PetscTime(&tt2);CHKERRQ(ierr);<br><br>    ierr = PetscPrintf(PETSC_COMM_WORLD, "The time used for the asynchronous calculation: %f\n",tt2-tt1); CHKERRQ(ierr);<br>    ierr = PetscPrintf(PETSC_COMM_WORLD,"+ |u| =  %g\n",(double) norm1); CHKERRQ(ierr);<br><br><br>    ierr = PetscTime(&tt1);CHKERRQ(ierr);<br>    ierr = VecNorm(b,NORM_2,&norm2); CHKERRQ(ierr);<br>    ierr = KSP_MatMult(ksp,A,c,Ac); <br>    ierr = PetscTime(&tt2);CHKERRQ(ierr);<br><br>    ierr = PetscPrintf(PETSC_COMM_WORLD, "The time used for the synchronous calculation: %f\n",tt2-tt1); CHKERRQ(ierr);<br>    ierr = PetscPrintf(PETSC_COMM_WORLD,"+ |b| =  %g\n",(double) norm2); CHKERRQ(ierr);<br></font><div><font color="#0000ff"><br></font></div><div><br></div><div>On a cluster with two or four nodes, the asynchronous computation is always much slower than synchronous computation.<br><br><font color="#ff0000">The time used for the asynchronous calculation: 0.000203<br>+ |u| =  100.<br>The time used for the synchronous calculation: 0.000006<br>+ |b| =  100.</font><br><br>Are there any necessary settings on MPI or Petsc to gain performance of asynchronous computation?<br><br>Thank you very much for anything you can provide.<br>Sincerely,<br>Viet.<br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div>