[petsc-users] Is there a way of having PETSc compile hypre with provided intel/mkl?

Matthew Knepley knepley at gmail.com
Mon Jul 30 06:28:18 CDT 2018


On Mon, Jul 30, 2018 at 5:48 AM Bastian Löhrer <
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.


>
> * 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.

  Thanks,

    Matt

> Looking forward to your advice
>
> Kind regards,
> Bastian
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20180730/92ccbdb0/attachment-0001.html>


More information about the petsc-users mailing list