[petsc-dev] Truly minimal configure
Jed Brown
jed at jedbrown.org
Sun Mar 15 10:06:40 CDT 2020
Patrick Sanan <patrick.sanan at gmail.com> writes:
> I want to generate docs/manualpages/htmlmap as quickly as possible, from scratch (a clone on ReadTheDocs), so I want a fast configure which will let me run "make allcite".
>
> The below will work, I think, but I'm curious whether there's an even faster known way.
>
> Also note that I had to explicitly turn off some MKL stuff, because it's included by default and depends on blaslapack.
>
>
> './configure',
> '--with-mpi=0',
> '--with-blaslapack=0',
> '--with-fortran=0',
> '--with-cxx=0',
> '--with-mkl_sparse_optimize=0',
> '--with-mkl_sparse=0',
These checks should probably be conditional on having found blaslapack,
but you don't have a working PETSc this way (it'll fail to link
examples), and as far as I can tell, you're just using configure to
install sowing and not need to hack the makefiles to do the tree
traversal without including $PETSC_ARCH/lib/petsc/conf/petscvariables.
This seems fine and we can eventually move to calling doctext from
Python or doing its job in Python (as part of the last step, moving man
pages to Sphinx).
At a high level, we see here that the cost of make allcite is dominated
by recursive make tree traversal.
Overhead Command Shared Object
35.81% sh libc-2.31.so
13.31% make make
11.18% make libc-2.31.so
7.63% sh ld-2.31.so
5.84% make ld-2.31.so
4.20% doctext doctext
4.07% doctext libc-2.31.so
3.88% doctext ld-2.31.so
3.64% sh bash
2.79% rm libc-2.31.so
1.99% rm ld-2.31.so
1.56% sh [unknown]
1.14% doctext [unknown]
0.56% make [unknown]
0.55% python libpython3.8.so.1.0
More information about the petsc-dev
mailing list