[petsc-dev] I just removed Fortran support from my development build

Jed Brown jed at jedbrown.org
Mon Oct 22 12:17:19 CDT 2018


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

>   Jed,
>
>   Why are the modules always built last? 
>
>          .....
>          FC arch-basic/obj/sys/objects/f2003-src/fsrc/optionenum.o
>           FC arch-basic/obj/sys/classes/bag/f2003-src/fsrc/bagenum.o
>           FC arch-basic/obj/mat/f90-mod/petscmatmod.o
>           FC arch-basic/obj/dm/f90-mod/petscdmmod.o
>           FC arch-basic/obj/dm/f90-mod/petscdmplexmod.o
>           FC arch-basic/obj/ksp/f90-mod/petsckspmod.o
>           FC arch-basic/obj/snes/f90-mod/petscsnesmod.o
>           FC arch-basic/obj/ts/f90-mod/petsctsmod.o
>           FC arch-basic/obj/tao/f90-mod/petsctaomod.o
>
> I don't think they have any dependency on the compiled C code so couldn't each module (still build sequentially within the list of modules) run in parallel with a bunch of C compilers? Why are they always scheduled last, forcing sequential?

The Fortran modules depend on each other so build sequentially.  Look
way up in your compilation history and you'll see lines for
petscsysmod.o and later petscvecmod.o.  Compiling those modules is just
that slow compared to the hundreds of C compilations that run in
parallel.


More information about the petsc-dev mailing list