[petsc-dev] make -j not supported? Why???

Barry Smith bsmith at mcs.anl.gov
Mon Feb 25 17:11:06 CST 2013


Parallel build prints someting like:

>>>>>>>> 
==========================================
Building PETSc using CMake with 5 build threads
==========================================
Re-run cmake file: Makefile older than: ../CMakeLists.txt

if it looks like

libfast in: /home/balay/spetsc/src
libfast in: /home/balay/spetsc/src/sys
libfast in: /home/balay/spetsc/src/sys/classes

then send configure.log to petsc-maint at mcs.anl.gov so we can see why it is not using cmake.

Your compile times are very high, likely you are compiling on some central file server and all files (including .o) are being moved back and forth across your network doing the build which will be slow and parallelism won't help much. It is much better to build on a disk on the machine you are building for, much faster.

   Barry

On Feb 25, 2013, at 5:06 PM, "Nystrom, William D" <wdn at lanl.gov> wrote:

> How do I make sure I am using the cmake based build and not the legacy build?  My build process
> looks like the following:
> 
>  NJ=16
> 
>  configure \
>      --PETSC_DIR=$PETSC_DIR \
>      --PETSC_ARCH=$PETSC_ARCH \
>      --download-cmake=yes \
>      --download-f-blas-lapack=yes \
>      --with-mpi=1 \
>      --with-mpi-dir=$MPI_ROOT \
>      --with-openmp=1 \
>      --with-pthreadclasses=1 \
>      --with-threadcomm=1 \
>      --with-shared-libraries \
>      --with-debugging=0 \
>      --with-make-np=$NJ \
>      --FOPTFLAGS="-O3" \
>      --COPTFLAGS="-O3" \
>      --CXXOPTFLAGS="-O3" \
>      --with-c2html=0 \
>      --with-large-file-io=1
> 
>  make all
> 
> ________________________________________
> From: petsc-dev-bounces at mcs.anl.gov [petsc-dev-bounces at mcs.anl.gov] on behalf of Barry Smith [bsmith at mcs.anl.gov]
> Sent: Monday, February 25, 2013 3:49 PM
> To: For users of the development version of PETSc
> Subject: Re: [petsc-dev] make -j not supported?  Why???
> 
> On Feb 25, 2013, at 2:30 PM, Tim Tautges <tautges at mcs.anl.gov> wrote:
> 
>> but why its need to not support otherwise-standard make options?  Similarly, PETSC_MAKE_STOP_ON_ERROR instead of make -k?
> 
>   Hmm, with the cmake based build -k seems to work fine, it keeps on going compiling everything it can. Without the -k it stops when the first compile fails. So it is supporting the "otherwise-standard make options".
> 
>   Yes, the legacy build which is only a fallback for when cmake fails, is funky. Are you using it? If so, let us know why and we'll try to improve the cmake version so that you don't need the legacy; even I don't use it any more.
> 
>   Barry
> 
>> 
>> - tim
>> 
>> --
>> ================================================================
>> "You will keep in perfect peace him whose mind is
>> steadfast, because he trusts in you."               Isaiah 26:3
>> 
>>            Tim Tautges            Argonne National Laboratory
>>        (tautges at mcs.anl.gov)      (telecommuting from UW-Madison)
>> phone (gvoice): (608) 354-1459      1500 Engineering Dr.
>>           fax: (608) 263-4499      Madison, WI 53706
>> 
> 




More information about the petsc-dev mailing list