Intel® MPI Library
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.
2214 Discussions

Intel MPI gfortran modules: Can we build our own?

Matt_Thompson
Novice
842 Views

I've been experimenting with using Intel MPI and the GNU compilers. However, I found out recently that you can't use gfortran 12 with Intel MPI 2021.6 (say) because it doesn't supply modules for it:

 

$ ls /usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran
10.2.0/  11.1.0/  4.8.0/  4.9.0/  5.1.0/  6.1.0/  7.1.0/  8.2.0/  9.1.0/

 

Now, this is probably because GCC 12 didn't exist at the time 2021.6 was finalized. Okay. So it might be in newer versions.

But I know that HPE MPT supplies code to allow people to build their own modules and I wondered if Intel MPI did as well? I ask because not only I am impatient, but also because Intel MPI + GNU means you don't get the MPI_F08 module. Intel supplies it for Intel Fortran, but not gfortran:

 

$ ls -1 /usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi*.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_base.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_constants.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_f08.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_f08_callbacks.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_f08_compile_constants.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_f08_link_constants.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_f08_types.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/mpi_sizeofs.mod
$ ls -1 /usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran/11.1.0/mpi*.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran/11.1.0/mpi.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran/11.1.0/mpi_base.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran/11.1.0/mpi_constants.mod
/usr/local/intel/oneapi/2021/mpi/2021.6.0/include/gfortran/11.1.0/mpi_sizeofs.mod

 

I know that gfortran 11 (and probably 10 and 9 even) can build the MPI_F08 modules because I build them with Open MPI. So it would be nice if Intel MPI had the same functionality.

0 Kudos
3 Replies
VarshaS_Intel
Moderator
798 Views

Hi,

 

Thanks for posting in Intel Communities.

 

>> Intel MPI + GNU means you don't get the MPI_F08 module

Thank you for your feedback. We have provided your feedback to the relevant team. At this moment there is no visibility when it will be implemented and available for use.

Please let me know if we can go ahead and close this case?

 

Thanks & Regards,

Varsha

 

0 Kudos
VarshaS_Intel
Moderator
780 Views

Hi,


We have not heard back from you. This thread will no longer be monitored by Intel. If you need any additional information, please post a new question.


Thanks & Regards,

Varsha


0 Kudos
DMishura
Employee
259 Views

In fact end user can build Fortran interface for any version, sources included into MPI package: $I_MPI_ROOT/opt/mpi/binding . In archive you may found README file which can be used as instruction.

Also I can add that latest GNU has Fortran module files version 15, so you may use modules with same version. For example gfortran-14.1 can utilize modules from gfortran-11.1 without error. But this is weak path, re-build of binding modules give you guarantee that everything will work fine.

0 Kudos
Reply