[petsc-dev] de-global variablelizing PETSc

Jed Brown jedbrown at mcs.anl.gov
Sun Nov 10 11:43:39 CST 2013


Barry Smith <bsmith at mcs.anl.gov> writes:

>   Why not go all the way and remove PetscInitialize()? The various
>   initializations in there could also be done “on the fly, as needed”
>   also with locks to make them safe. Why are some initializations done
>   at startup and some done “as needed”?

Where do you going to get command line arguments (and otherwise
initialize an options database)?

I agree that most setup can be done lazily.  I don't really care whether
each thread creates their own MPI types or PetscInitialize does it.  If
we removed PetscInitialize, users would still have to call MPI_Init
themselves, and things like debugging/profiling still need to have
broader scope than an individual object, so I think we'd end up going
down tho road mentioned in the footnote of my other message.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20131110/4231beac/attachment.sig>


More information about the petsc-dev mailing list