[petsc-dev] OpenMP in PETSc when calling from Fortran?

Jed Brown jedbrown at mcs.anl.gov
Fri Mar 1 13:06:24 CST 2013


On Fri, Mar 1, 2013 at 3:26 AM, Åsmund Ervik <asmund.ervik at ntnu.no> wrote:

> Thanks for clarifying this. I am already using OpenMP pragmas in non-PETSc
> routines in my code, and using petsc-dev. Are you saying that I should also
> somehow use OpenMP pragmas around the calls to KSPSolve etc.?
>
> Suppose that my program is usually run like this:
> "./run -pc_type gamg -ksp_type bcgs"
> with other values left to their defaults, and I want to make it run in
> parallel:
> "./run -pc type gamg -ksp_type bcgs -threadcomm_type openmp
> -threadcomm_nthreads 8"
>
> When I do this, the PC and KSP still run in serial as far as I can tell,
> and the program does not execute faster. What am I missing here?
>

Matrix and vector operations are probably running in parallel, but probably
not the operations that are taking time. Always send -log_summary if you
have a performance question.


> In case it is of interest, the matrix from my Poisson equation has in the
> range of 0.4 - 1 million nonzero elements, on average 5 per row.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20130301/795d346f/attachment.html>


More information about the petsc-dev mailing list