[petsc-users] Is there a way of having PETSc compile hypre with provided intel/mkl?
Satish Balay
balay at mcs.anl.gov
Mon Jul 30 09:11:01 CDT 2018
On Mon, 30 Jul 2018, Bastian Löhrer wrote:
> On 30.07.2018 13:28, Matthew Knepley wrote:
> > On Mon, Jul 30, 2018 at 5:48 AM Bastian Löhrer
> > <bastian.loehrer at tu-dresden.de <mailto:bastian.loehrer at tu-dresden.de>>
> > wrote:
> >
> > Dear PETSc users,
> >
> > im configuring PETSc to use an intel stack including intel/mkl:
> >
> > ./configure PETSC_ARCH=$PETSC_ARCH \
> > --with-gnu-compilers=0 --with-vendor-compilers=intel \
> > --with-large-file-io=1 \
> > --CFLAGS="-L${I_MPI_ROOT}/intel64/lib
> > -I${I_MPI_ROOT}/intel64/include -lmpi" \
> > --CXXFLAGS="-L${I_MPI_ROOT}/intel64/lib
> > -I${I_MPI_ROOT}/intel64/include -lmpi -lmpicxx" \
> > --FFLAGS="-L${I_MPI_ROOT}/intel64/lib
> > -I${I_MPI_ROOT}/intel64/include -lmpi" \
> > --LDFLAGS="-L${I_MPI_ROOT}/intel64/lib
> > -I${I_MPI_ROOT}/intel64/include -lmpi" \
> > --with-blas-lapack-dir="${MKLROOT}/lib/intel64" \
> > --download-hypre \
> > --with-debugging=yes
> >
> > *
> > two questions:*
> >
> > *
> > 1)* the blas-lapack-dir option is not passed down to the
> > compilation of hypre according to $PETSC_DIR/$PETSC_ARCH/conf/hypre
> > *Is there a way of having PETSc compile hypre with my intel/mkl?*
> >
> >
> > This should happen. Please send configure.log so we can see what went on.
> My initial guess was that the file $PETSC_DIR/$PETSC_ARCH/conf/hypre lists the
> parameters which are used for compiling hypre. As I said, this file does not
> mention mkl anywhere.
> I may be mistaken though, because having a second look I do realize that the
> mkl library is mentioned in the configure log file in line 86661 ff. (where
> hypre is being configured) and at the end of the log.
>
> Here is my configure.log:
> https://cloudstore.zih.tu-dresden.de/index.php/s/b6rT0WMAKEMsj8S/download
>
> Here is that hypre file:
> https://cloudstore.zih.tu-dresden.de/index.php/s/TSfXQ2pgDw5ALZm/download
Working directory: /lustre/ssd/prime/libraries/petsc-3.3-p6_29
This release is pretty old. Can you use the currently supported release - i.e 3.9?
Satish
>
> Thanks,
> Bastian
>
>
> > *
> > 2)* *Should I omit or include any option?* I have come across a
> > few options in previous configuration calls used at my department
> > which I have removed from my configuration call because
> >
> > a) I had the impression that they were of no additional use:
> >
> > * --with-cc=mpiicc --with-cxx=mpiicpc --with-fc=mpiifort
> > --with-mpi=1
> > * --with-pic, because --with-pic=1 is the default anyway
> > since 2.3.1, is it not?
> > (https://www.mcs.anl.gov/petsc/documentation/changes/231.html)
> > * --with-mpiexec=mpirun
> > * --with-mpi-compilers=1
> > * --known-mpi-shared=1
> > * --with-mpi-dir=...
> > * COPTFLAGS="-g" CXXOPTFLAGS="-g" FOPTFLAGS="-g" because
> > --with-debugging=yes adds them anyway
> >
> > Yes, getting rid of all these is fine.
> >
> > b) because I couldn't figure out what they were actually for:
> >
> > * --configModules=PETSc.Configure
> > * --optionsModule=PETSc.compilerOptions
> >
> > Those are added automatically. These are hooks so that you can completely
> > change the system without
> > getting rid of the low-level tests.
> >
> > c) others:
> >
> > * --known-64-bit-blas-indices I guess it wouldn't hurt
> > anyway so I guess I'll include this option the next time I
> > configure petsc
> > (http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Sys/PetscBLASInt.html)
> >
> > We have a bunch of -known-* options. They are used for any test that has to
> > execute. Batch environments cannot,
> > and thus you need to specify all of them. You do not need it unless you are
> > using --with-batch.
> Okay, fantastic, thank you!
>
More information about the petsc-users
mailing list