On some systems, like my Mac, the environmental variable CPATH is set to the appropriate directory for mkl.h when MKL is initialized with
source /opt/intel/compilers_and_libraries/mac/bin/compilervars.sh intel64 hence the compiler can magically find mkl.h but this doesn't seem to be universal, I think that is why Felix's system cannot find the include, I found a Linux machine at ANL that produces the same problem Felix has. Anyways I'm fixing the PETSc install will just work even if CPATH is not set. Barry > On Aug 3, 2020, at 10:21 PM, Xiaoye S. Li <x...@lbl.gov> wrote: > > Regarding MKL, superlu only uses some BLAS routines in MKL. If you have > alternative BLAS, you don't need to use MKL. > > But, in my experience, on an Intel system, the compiler can correctly include > the path with mkl.h, that is, I don't need to do anything special. > I think mpiicc should work. > > Sherry > > On Mon, Aug 3, 2020 at 8:46 AM <f...@rzg.mpg.de <mailto:f...@rzg.mpg.de>> > wrote: > Hi Barry, > Thanks for the branch (and thanks to Sherry as well). I tried to use > the configure example " arch-ci-linux-intel-mkl-single.py" (adding the > --with-batch flag, since I am running on a cluster), but I get the > following error message: > TESTING: check from > config.libraries(config/BuildSystem/config/libraries.py:157) > > > > ******************************************************************************* > UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log > for details): > ------------------------------------------------------------------------------- > Downloaded ptscotch could not be used. Please check install in > /u/flw/petsc-hash-pkgs/073aec050 > > (see configure1.log) > > Next I tried a minimalistic version using Intel MPI compilers: > ./configure --download-superlu_dist --download-metis > --download-parmetis --download-ptscotch --with-precision=single > --with-batch --with-fc=mpiifort --with-cc=mpiicc --with-cxx=mpiicpc > > There I got the following error: > =============================================================================== > > > Compiling and installing SUPERLU_DIST; this may take several minutes > > > > =============================================================================== > > > > > > > ******************************************************************************* > UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log > for details): > ------------------------------------------------------------------------------- > Error running make on SUPERLU_DIST > > (see configure2.log) > > > Next I tried > ./configure --download-superlu_dist --download-metis > --download-parmetis --download-ptscotch --with-precision=single > --with-batch > --with-mpi-dir=/mpcdf/soft/SLE_12/packages/x86_64/intel_parallel_studio/2018.4/impi/2018.4.274/intel64 > > Same error message (see configure3.log) > > > It seems that there is something going on with mkl in case I want to > use Intel compilers for C and C++ (compiling with gcc and g++ seems to > work ) > > Do you know what is going on there? (I am running on the Draco > cluster, if that helps > (https://www.mpcdf.mpg.de/services/computing/draco > <https://www.mpcdf.mpg.de/services/computing/draco>)) > > > Best regards, > Felix > > Zitat von Barry Smith <bsm...@petsc.dev <mailto:bsm...@petsc.dev>>: > > > Felix, > > > > The branch is ready. Just use > > > > git checkout barry/2020-07-28/superlu_dist-single > > ./configure --download-superlu_dist --download-metis > > --download-parmetis --download-ptscotch --with-precision=single > > and whatever else you use > > > > Barry > > > > It will automatically get the needed branch of SuperLU_DIST that > > Sherry prepared. > > > > > >> On Jul 27, 2020, at 2:10 PM, f...@rzg.mpg.de <mailto:f...@rzg.mpg.de> > >> wrote: > >> > >> Hi Shery, > >> Yes, ideally we would like to compile PETSc in single precision and > >> simply run a single precision version of SUPERLU_DIST just like > >> e.g. MUMPS. > >> > >> Best regards and thanks, > >> Felix > >> Zitat von "Xiaoye S. Li" <x...@lbl.gov <mailto:x...@lbl.gov>>: > >> > >>> Barry, > >>> > >>> I have a branch 'Mixed-precision' working with single precision FP32. I > >>> assume Felix wants to use superlu_dist from petsc. How do you want to > >>> incorporate it in petsc? > >>> > >>> https://github.com/xiaoyeli/superlu_dist > >>> <https://github.com/xiaoyeli/superlu_dist> > >>> > >>> PS1: in this version, FP32 only works on CPU. FP64 and complex-FP64 all > >>> work on GPU. > >>> > >>> PS2: currently there is no mixed-precision yet, but it is the branch we > >>> are > >>> adding mix-prec support. Will take a while before merging to master. > >>> > >>> Sherry > >>> > >>> > >>> On Wed, Jul 22, 2020 at 6:04 AM <f...@rzg.mpg.de > >>> <mailto:f...@rzg.mpg.de>> wrote: > >>> > >>>> Hi Barry, > >>>> for now I just want to run everything in single on CPUs only with > >>>> SUPERLU_DIST. Maybe we will also incorporate GPUs in the future, but > >>>> there are no immediate plans yet. So if you could provide the support, > >>>> that would be awesome. > >>>> > >>>> Best regards, > >>>> Felix > >>>> > >>>> Zitat von Barry Smith <bsm...@petsc.dev <mailto:bsm...@petsc.dev>>: > >>>> > >>>> > Felix, > >>>> > > >>>> > What are your needs, do you want this for CPUs or for GPUs? Do > >>>> > you wish to run all your code in single precision or just the > >>>> > SuperLU_Dist solver while the rest of your code double? > >>>> > > >>>> > If you want to run everything on CPUs using single precision > >>>> > then adding the support is very easy, we can provide that for you > >>>> > any time. The other cases will require more thought. > >>>> > > >>>> > Barry > >>>> > > >>>> > > >>>> >> On Jul 21, 2020, at 8:58 AM, f...@rzg.mpg.de <mailto:f...@rzg.mpg.de> > >>>> >> wrote: > >>>> >> > >>>> >> Dear PETSc support team, > >>>> >> some time ago you told me that you are planning on releasing a > >>>> >> version that supports SUPERLU_DIST in single-precision soon. Can > >>>> >> you tell me roughly what time frame you had in mind? > >>>> >> > >>>> >> Best regards, > >>>> >> Felix > >>>> >> > >>>> > >>>> > >>>> > >>>> > >> > >> > >> > >