Barry Smith <[email protected]> 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.

Attachment: pgpyK2GwERotk.pgp
Description: PGP signature

Reply via email to