Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

Parallel Studio XE 2019 and MPI

van_den_Ende__Martij
983 Views

Recently I installed Parallel Studio XE 2019.1.053 on x64 Linux, and I want to compile a Fortran90 program with MPI. I get the following error:

>> ifort -O3 -ip -ipo -c parallel.f90
parallel.f90(7): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [MPI]
  use mpi
------^

I also tried to call mpiifort, but this command doesn't seem to exist. I have sourced psxevars.sh after installing Parallel Studio as instructed.

What am I doing wrong?

0 Kudos
5 Replies
Steve_Lionel
Honored Contributor III
983 Views

My guess is that you installed some edition of PSXE other than the Cluster Edition, as that is the only one that includes Intel MPI.

0 Kudos
van_den_Ende__Martij
983 Views

Correct Steve, I've got the Professional edition under an academic license. I was told by someone on Stackoverflow that I have to manually compile OpenMPI with the Intel compilers to work around this issue. Perhaps you could confirm this diagnosis?

0 Kudos
Steve_Lionel
Honored Contributor III
983 Views

I only played very briefly with OpenMPI a while ago, but I believe there are precompiled distributions of it. It seems unlikely you'd need to rebuild it, not to mention that it's C code. At most you'd need to compile the Fortran source for the MPI module. There are several MPI implementations you can use, OpenMPI is one of them.

0 Kudos
TimP
Honored Contributor III
983 Views

In theory, as Steve says, only the Fortran library of OpenMPI (and mpifort wrapper) would need recompilation against ifort.  I haven't seen anyone do this, as it would require finding the source of the exact pre-built binary version of OpenMPI, removing the gfortran components of the binary, and possibly incurring a complete rebuild anyway.  With most linux distributions fully supported and tested by Intel with ifort, the supplied OpenMPI is probably out of date and doesn't conform with the desirable system analogous to ifort of building MPI with a version specific path to enable setting environment to that MPI or another.

0 Kudos
van_den_Ende__Martij
983 Views

I found that compiling and switching between two versions of OpenMPI works like a charm, as suggested on Stackoverflow. The Modules package allows me to easily switch between "Intel" or "GNU" environments, so that mpif90 always points to the right binary.

0 Kudos
Reply