- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
OS: Linux RH 6.6 Intel MPI version: impi/5.0.3.048 PGI: pgi/15.1 I am trying to follow the instructions provided in the binding kit tarball from the following file: README-intel-mpi-binding-kit.txt Installing bindings for F77, C, and C++ was straightforward because there are no name conflicts. However I see a problem with installing F90 bindings, particularly with the module files. Following the instructions in the document mentioned above creates the following .mod files: [root@sfe01 f90]# ll *.mod -rw-r--r-- 1 root root 128646 Oct 15 19:25 mpi_base.mod -rw-r--r-- 1 root root 85397 Oct 15 19:25 mpi_constants.mod -rw-r--r-- 1 root root 323 Oct 15 19:25 mpi.mod -rw-r--r-- 1 root root 15159 Oct 15 19:25 mpi_sizeofs.mod [root@sfe01 f90]# And according to the instructions we are supposed to move or copy these files to the include directory, but that already has the following files which presumably intended for use with the Intel compiler: [root@sfe01 include64]# ll /apps/intel/impi/5.0.3.048/include64/*.mod -rw-r--r-- 1 root root 118039 Jan 30 2015 /apps/intel/impi/5.0.3.048/include64/mpi_base.mod -rw-r--r-- 1 root root 52058 Jan 30 2015 /apps/intel/impi/5.0.3.048/include64/mpi_constants.mod -rw-r--r-- 1 root root 13621 Jan 30 2015 /apps/intel/impi/5.0.3.048/include64/mpi.mod -rw-r--r-- 1 root root 8991 Jan 30 2015 /apps/intel/impi/5.0.3.048/include64/mpi_sizeofs.mod [root@sfe01 include64]# Here's the section from the README file for the F90 bindings: --------- II.2.4. Fortran 90 Binding To create the Intel(R) MPI Library Fortran 95 binding library using the PGI* Fortran 90 compiler, do the following steps: 1. Make sure that the PGI* Fortran 90 compiler (pgf90) is in your PATH 2. Go to the directory f90 3. Run the command # make MPI_INST=<MPI_path> F90=<f90_compiler> NAME=<name> [makedriver64] with <MPI_path> - installation directory of the Intel(R) MPI Library <f90_compiler> - compiler to be used <name> - base name for the libraries and compiler script makedriver64 - optional target to build the 64-bit compiler script makemod64 - optional target to build the 64-bit module files 4. Copy the resulting module files to the Intel(R) MPI Library include or include64 directory. 5. Copy the resulting script mpi${NAME} to the Intel(R) MPI Library bin or bin64 directory. ----------- Was this an oversight are am I missing some step? Thanks!
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't expect that this is intended. Let me check with our developers and I'll update you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Our developers have implemented a fix and it should be available in our next release.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I try to create the wrappers for PGI 16.9 compilers for Intel MPI 16.3.210
I'm working on a node running CentOS 7.2
uname -a Linux jaws.cluster 3.10.0-327.36.2.el7.x86_64 #1 SMP Mon Oct 10 23:08:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
I check the version of the softwares I use :
pgc++ --version pgc++ 16.9-0 64-bit target on x86-64 Linux -tp haswell The Portland Group - PGI Compilers and Tools Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved. mpirun --version Intel(R) MPI Library for Linux* OS, Version 5.1.3 Build 20160120 (build id: 14053) Copyright (C) 2003-2016, Intel Corporation. All rights reserved.
I fiollow the instructions in the file named README-intel-mpi-binding-kit.txt
cd cxx make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgc++ NAME=pgc++ ARCH=intel64 mkdir -p intel64/lib && ar cr intel64/lib/libmpipgc++.a initcxx.o gcc -shared -Xlinker -x -Xlinker -soname=libmpipgc++.so.12 -o intel64/lib/libmpipgc++.so.12.0 initcxx.o (cd intel64/lib && if [ ! -f libmpipgc++.so.12 ]; then ln -s libmpipgc++.so.12.0 libmpipgc++.so.12; fi) (cd intel64/lib && if [ ! -f libmpipgc++.so ]; then ln -s libmpipgc++.so.12 libmpipgc++.so; fi) mkdir -p intel64/bin sed -e 's/g++//trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgc++/' -e 's/Docompchk\=yes/Docompchk\=no/' -e 's/mpigc$gver/mpipgc++/g' \ -e 's/rpath_opt\=.*/rpath_opt\=/' /trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/bin/mpigxx > intel64/bin/mpipgc++ sed: -e expression #1, char 8: unknown option to `s' make: *** [makedriver] Error 1 # cd ../f77 # make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgf77 NAME=pgf77 ARCH=intel64 mkdir -p intel64/bin sed -e 's/g77//trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf77/' -e 's/Docompchk\=yes/Docompchk\=no/' \ -e 's/rpath_opt\=.*/rpath_opt\=/' /trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/bin/mpif77 > intel64/bin/mpipgf77 sed: -e expression #1, char 8: unknown option to `s' make: *** [makedriver] Error 1 # cd ../f90 # make MPI_INST=/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi CC=pgf90 NAME=pgf90 ARCH=intel64 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_constants.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_sizeofs.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi_base.f90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -c -fPIC -I/trinity/shared/apps/cv-standard/intel/2016.3.210/compilers_and_libraries_2016.3.210/linux/mpi/intel64/include mpi.f90 mkdir -p intel64/lib && ar cr intel64/lib/libmpipgf90.a mpi.o mpi_base.o mpi_sizeofs.o mpi_constants.o mkdir -p intel64/include/pgf90 && mv *.mod intel64/include/pgf90 /trinity/shared/apps/cv-standard/pgi/linux86-64/16.9/bin/pgf90 -shared -Xlinker -x -Xlinker -soname=libmpipgf90.so -o intel64/lib/libmpipgf90.so mpi.o mpi_base.o mpi_sizeofs.o mpi_constants.o -lrt -ldl pgf90-Error-Unknown switch: -Xlinker pgf90-Error-Unknown switch: -x pgf90-Error-Unknown switch: -Xlinker make: *** [makemod] Error 1
Could you please tell me what's wrong with this ?
Thank you in advance
Regards,
Guy.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page