Intel® oneAPI HPC Toolkit
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.
Announcements
The Intel sign-in experience is changing in February to support enhanced security controls. If you sign in, click here for more information.

mvapich2-2.2b and intel-15.0.4

Dominikus_H_
Beginner
208 Views

 

Hi all, apologies if this is not the correct forum. I am trying to compile mvapich-2.2b with the intel 2015 compiler (15.0.4) and I am getting the following error during make:

make[2]: Entering directory `/app/mvapich2-2.2b/intel-15.0.4/src/mvapich2-2.2b'
  CC       src/mpi/attr/lib_libmpi_la-attr_delete.lo
In file included from ./src/mpid/ch3/channels/mrail/src/gen2/vbuf.h(33),
                 from ./src/mpid/ch3/channels/mrail/src/gen2/mpidi_ch3_rdma_pre.h(23),
                 from ./src/mpid/ch3/channels/mrail/include/mpidi_ch3_pre.h(23),
                 from ./src/mpid/ch3/include/mpidpre.h(60),
                 from ./src/include/mpiimpl.h(200),
                 from src/mpi/attr/attr_delete.c(8):
/app/mvapich2-2.2b/intel-15.0.4/src/mvapich2-2.2b/src/mpid/ch3/channels/common/include/mv2_clock.h(58): error: identifier "asm" is undefined
      asm volatile ("rdtsc" : "=a" (low), "=d" (high));
      ^

In file included from ./src/mpid/ch3/channels/mrail/src/gen2/vbuf.h(33),
                 from ./src/mpid/ch3/channels/mrail/src/gen2/mpidi_ch3_rdma_pre.h(23),
                 from ./src/mpid/ch3/channels/mrail/include/mpidi_ch3_pre.h(23),
                 from ./src/mpid/ch3/include/mpidpre.h(60),
                 from ./src/include/mpiimpl.h(200),
                 from src/mpi/attr/attr_delete.c(8):
/app/mvapich2-2.2b/intel-15.0.4/src/mvapich2-2.2b/src/mpid/ch3/channels/common/include/mv2_clock.h(58): error: expected a ";"
      asm volatile ("rdtsc" : "=a" (low), "=d" (high));
          ^

compilation aborted for src/mpi/attr/attr_delete.c (code 2)
make[2]: *** [src/mpi/attr/lib_libmpi_la-attr_delete.lo] Error 1
make[2]: Leaving directory `/app/mvapich2-2.2b/intel-15.0.4/src/mvapich2-2.2b'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/app/mvapich2-2.2b/intel-15.0.4/src/mvapich2-2.2b'
make: *** [all] Error 2

Has anyone come across this error? I am running a Redhat Scientific Linux 7.2 system.

Thanks, Dom

0 Kudos
2 Replies
TimP
Black Belt
208 Views
This seems more likely to be dealt with on an mvapich support forum. You might need to show your configure steps and logs. If there's nothing useful there, you may need to examine preprocessed source as it looks like there is unterminated code preceding this. Note that icc offers a Microsoft style _rdtsc intrinsic as an alternative to this asm.
Dominikus_H_
Beginner
208 Views

Hi, I solved the problem by replacing acm volatile with __acm__ __volatile__ to comply with cstd=c99. Might be useful for others, too.

Reply