<div dir="ltr">I think I have tracked down the DMPlex performance issue to a problem with PetscHashIJKL. I replaced it with PetscHashIJ in 2D, and I still have bad behavior. I made a simple test and the growth of runtime is definitely superlinear. The test is ex26 in knepley/fix-hash-scaling. I get<div>
<br></div><div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 100 -log_summary | grep "(sec):" | cut -c 23-32</div><div>6.067e-01 </div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 110 -log_summary | grep "(sec):" | cut -c 23-32</div>
<div>1.491e+00 </div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 120 -log_summary | grep "(sec):" | cut -c 23-32</div><div>2.913e+00 </div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 130 -log_summary | grep "(sec):" | cut -c 23-32</div>
<div>4.892e+00 </div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 140 -log_summary | grep "(sec):" | cut -c 23-32</div><div>6.812e+00 </div><div><div>next *$:/PETSc3/petsc/petsc-dev$ /PETSc3/petsc/petsc-dev/arch-c-opencl-next/lib/ex26-obj/ex26 -N 150 -log_summary | grep "(sec):" | cut -c 23-32</div>
<div>9.777e+00 </div></div><div><br></div><div>Who put this in?</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div><br></div>-- <br>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
-- Norbert Wiener
</div></div>