Re: [petsc-users] IMPI with Hypre
Sure - but if 'module load icc' has gcc-4*' in path - that's a bug in the icc module spec [as that version is incompatible with its c++ support] . It should also load a compatible gcc version [via PATH - or via module dependencies] if its implemented this way - then you won't have a broken icc - that requires a swap of gcc. Satish On Tue, 8 Aug 2023, Victor Eijkhout wrote: > You say bug I say feature. Lmod has a way to mark modules as mutually > exclusive. That’s a decision of the way the site is set up. For most users > that’s a good idea. > > For instance, if you load two compilers, and both have an MPI, how do you > decide which one is loaded by “load mpich”? > > Etc. I’m sure thought has gone into this. > > Victor. > > > << >
Re: [petsc-users] IMPI with Hypre
You say bug I say feature. Lmod has a way to mark modules as mutually exclusive. That’s a decision of the way the site is set up. For most users that’s a good idea. For instance, if you load two compilers, and both have an MPI, how do you decide which one is loaded by “load mpich”? Etc. I’m sure thought has gone into this. Victor. <<
Re: [petsc-users] IMPI with Hypre
If using modules - using 'module load gcc icc' [or equivalent] should normally work - but if the modules are setup such that loading icc unloads gcc - then I think that's a bug in this module setup.. [as icc has an (internal) dependency on gcc - so ignoring this dependency to remove a gcc module doesn't look correct to me] Satish On Tue, 8 Aug 2023, Victor Eijkhout wrote: > * Its easier to just add the newer version of gcc/g++ compilers to PATH > > Except that I do my path loading through environment modules (lmod version) > and they do not allow multiple compilers to be loaded at the same time. > > But yes, that would work. > > V. > > From: Satish Balay > Date: Tuesday, August 8, 2023 at 11:20 > To: Victor Eijkhout > Cc: Barry Smith , Khaled Nabil Shar Abdelaziz > , petsc-users@mcs.anl.gov > Subject: Re: [petsc-users] IMPI with Hypre > Its easier to just add the newer version of gcc/g++ compilers to PATH - and > icc will pick it up [without requiring -gcc-toolchain option] > > export PATH=/location/of/newer/g++/bin:$PATH > ./configure ... > make ... > > Satish > > On Tue, 8 Aug 2023, Victor Eijkhout wrote: > > > Maybe an option for specifying the explicit location of gcc version? The > > intel compiler has a “-gcc-toolchain” option for that. > > > > https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-0/gcc-toolchain.html<https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-0/gcc-toolchain.html> > > > > Victor. > > > > > > > > > >> This message is from an external sender. Learn more about why this << > >> matters at https://links.utexas.edu/rtyclf.<< >
Re: [petsc-users] IMPI with Hypre
* Its easier to just add the newer version of gcc/g++ compilers to PATH Except that I do my path loading through environment modules (lmod version) and they do not allow multiple compilers to be loaded at the same time. But yes, that would work. V. From: Satish Balay Date: Tuesday, August 8, 2023 at 11:20 To: Victor Eijkhout Cc: Barry Smith , Khaled Nabil Shar Abdelaziz , petsc-users@mcs.anl.gov Subject: Re: [petsc-users] IMPI with Hypre Its easier to just add the newer version of gcc/g++ compilers to PATH - and icc will pick it up [without requiring -gcc-toolchain option] export PATH=/location/of/newer/g++/bin:$PATH ./configure ... make ... Satish On Tue, 8 Aug 2023, Victor Eijkhout wrote: > Maybe an option for specifying the explicit location of gcc version? The > intel compiler has a “-gcc-toolchain” option for that. > > https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.intel.com%2Fcontent%2Fwww%2Fus%2Fen%2Fdocs%2Fdpcpp-cpp-compiler%2Fdeveloper-guide-reference%2F2023-0%2Fgcc-toolchain.html=05%7C01%7C%7C1ee068e767e042b91c3708db982b57b1%7C31d7e2a5bdd8414e9e97bea998ebdfe1%7C0%7C0%7C638271084142649215%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C=0jfUA3EMFkpeKOZdhawJjRyivCQ8yF2C50DP2pukJlk%3D=0<https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-0/gcc-toolchain.html> > > Victor. > > > > >> This message is from an external sender. Learn more about why this << >> matters at https://links.utexas.edu/rtyclf.<<
Re: [petsc-users] IMPI with Hypre
Its easier to just add the newer version of gcc/g++ compilers to PATH - and icc will pick it up [without requiring -gcc-toolchain option] export PATH=/location/of/newer/g++/bin:$PATH ./configure ... make ... Satish On Tue, 8 Aug 2023, Victor Eijkhout wrote: > Maybe an option for specifying the explicit location of gcc version? The > intel compiler has a “-gcc-toolchain” option for that. > > https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-0/gcc-toolchain.html > > Victor. > > > >
Re: [petsc-users] IMPI with Hypre
Maybe an option for specifying the explicit location of gcc version? The intel compiler has a “-gcc-toolchain” option for that. https://www.intel.com/content/www/us/en/docs/dpcpp-cpp-compiler/developer-guide-reference/2023-0/gcc-toolchain.html Victor.
Re: [petsc-users] IMPI with Hypre
We get these reports regularly. Intel is selecting [GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] as the base compiler, this ancient version does not provide the language support needed by hypre. You need a more recent GNU compiler available for the Intel compilers to base themselves on. Barry > On Aug 8, 2023, at 11:24 AM, Khaled Nabil Shar Abdelaziz > wrote: > > Hello, > I am running into trouble configuring petsc with hypre and intel mpi > > Configure command: > ``` > ./configure PETSC_ARCH=linux-intel-dbg --with-cc=mpiicc --with-cxx=mpiicpc > --with-fc=mpiifort --with-blaslapack-dir=$MKL_HOME --download-metis > --download-parmetis --download-hypre --with-make-np=10 > ``` > > Terminal output: > ``` > * >UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log for > details): > - > Using C++ dialect C++11 as lower bound due to package(s): > - hypre > But C++ compiler (mpiicpc) appears non-compliant with C++11 or didn't > accept: > - -std=c++20 > - -std=c++17 > - -std=c++14 > - -std=c++11 > * > ``` > > I also attached the configure.log > > Thank you in advance. > Best, > Khaled >