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

Nystrom, William D wdn at lanl.gov
Mon Feb 25 17:28:06 CST 2013


Actually, this is the configure and make command for the timing info I reported earlier in this thread
that Barry said was slow.  So, lots more external packages as well as cuda support.  I had NJ=16
for this case and was building on a front end for a test bed system that is not very busy - I was
probably the only user at the time.  But the disk space was NFS mounted.

Dave

  configure \
      --PETSC_DIR=$PETSC_DIR \
      --PETSC_ARCH=$PETSC_ARCH \
      --download-cmake=yes \
      --download-superlu=yes \
      --download-superlu_dist=yes \
      --download-hwloc=yes \
      --download-sundials=yes \
      --download-ml=yes \
      --download-hypre=yes \
      --download-spai=yes \
      --download-blacs=yes \
      --download-pastix=yes \
      --download-mumps=yes \
      --download-scalapack=yes \
      --download-parmetis=yes \
      --download-metis=yes \
      --download-ptscotch=yes \
      --with-mpi=1 \
      --with-mpi-dir=$MPI_ROOT \
      --with-openmp=1 \
      --with-pthreadclasses=1 \
      --with-threadcomm=1 \
      --with-cholmod=1 \
      --with-cholmod-dir=$PACKAGE_ROOT/SuiteSparse \
      --with-umfpack=1 \
      --with-umfpack-dir=$PACKAGE_ROOT/SuiteSparse \
      --with-blas-lapack-dir=$MKL_ROOT \
      --with-cuda=1 \
      --with-cuda-arch=sm_20 \
      --with-cuda-dir=$CUDA_ROOT \
      --with-thrust=1 \
      --with-cusp=1 \
      --with-cusp-dir=$PACKAGE_ROOT/cusp \
      --with-txpetscgpu=1 \
      --with-txpetscgpu-dir=$PACKAGE_ROOT/txpetscgpu \
      --with-shared-libraries \
      --with-debugging=0 \
      --with-make-np=$NJ \
      --FOPTFLAGS="-O3" \
      --COPTFLAGS="-O3" \
      --CXXOPTFLAGS="-O3" \
      --CUDAOPTFLAGS="-O3" \
      --CPPFLAGS="-DGPU_BLAS -I$CUDA_ROOT/include" \
      --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 Satish Balay [balay at mcs.anl.gov]
Sent: Monday, February 25, 2013 4:13 PM
To: For users of the development version of PETSc
Subject: Re: [petsc-dev] make -j not supported?  Why???

The build script here is doing both configure and make. configure is
sequential and slow.

Satish


On Mon, 25 Feb 2013, Barry Smith wrote:

> 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