Software Archive
Read-only legacy content
17061 Discussions

NASA NPB compiling problem

Reeann_Z_
Beginner
470 Views

For the NASA Parallel Benchmark, I tried to compile it for Xeon Phi 7120P, got bellow problem.

The make.def file

MPIF77 = mpiifort
FLINK   = $(MPIF77)
FMPI_LIB  = -L/opt/intel/impi/4.1.3.048/mic/lib -L/opt/intel/composerxe/lib/mic -lmpi
FMPI_INC = -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic
FFLAGS  = -mmic -O3
FLINKFLAGS = -O3
MPICC = mpiicc
CLINK   = $(MPICC)
CMPI_LIB  = -L/opt/intel/impi/4.1.3.048/mic/lib -L/opt/intel/composerxe/lib/mic -lmpi
CMPI_INC = -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic
CFLAGS  = -mmic -O3
CLINKFLAGS = -O3
CC      = icc -g
BINDIR  = ../bin
CONVERTFLAG     = -DFORTRAN_REC_SIZE=4
RAND   = randi8

When doing the compilation, the error as bellow

$ make bt NPROCS=16 CLASS=C
   =========================================
   =      NAS Parallel Benchmarks 3.3      =
   =      MPI/F77/C                        =
   =========================================

cd BT; make NPROCS=16 CLASS=C SUBTYPE= VERSION=
make[1]: Entering directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
make[2]: Entering directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/sys'
icc -DFORTRAN_REC_SIZE=4 -o setparams setparams.c
make[2]: Leaving directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/sys'
../sys/setparams bt 16 C
make[2]: Entering directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 bt.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 make_set.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 initialize.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 exact_solution.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 exact_rhs.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 set_constants.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 adi.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 define.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 copy_faces.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 rhs.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 solve_subs.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 x_solve.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 y_solve.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 z_solve.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 add.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 error.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 verify.f
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 setup_mpi.f
cd ../common; mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 print_results.f
cd ../common; mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 timers.f
make[3]: Entering directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
mpiifort -c -I/opt/intel/impi/4.1.3.048/mic/include/ -I /opt/intel/composerxe/include/mic -mmic -O3 btio.f
mpiifort -O3 -o ../bin/bt.C.16 bt.o make_set.o initialize.o exact_solution.o exact_rhs.o set_constants.o adi.o define.o copy_faces.o rhs.o solve_subs.o x_solve.o y_solve.o z_solve.o add.o error.o verify.o setup_mpi.o ../common/print_results.o ../common/timers.o btio.o -L/opt/intel/impi/4.1.3.048/mic/lib -L/opt/intel/composerxe/lib/mic -lmpi
ld: bt.o: Relocations in generic ELF (EM: 181)
ld: bt.o: Relocations in generic ELF (EM: 181)
bt.o: could not read symbols: File in wrong format
make[3]: *** [bt-bt] Error 1
make[3]: Leaving directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
make[2]: *** [exec] Error 2
make[2]: Leaving directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
make[1]: *** [../bin/bt.C.16] Error 2
make[1]: Leaving directory `/home/reeann/NPB3.3.1/NPB3.3-MPI/BT'
make: *** [bt] Error 2


What caused this problem?

 

 

0 Kudos
1 Reply
Kevin_D_Intel
Employee
470 Views

You are missing -mmic in FLINKFLAGS. The same issue exists for CLINKFLAGS assuming that might be used somewhere within the build process.

0 Kudos
Reply