Articles
How to build DL_Poly intel compiler_10.1 and Ompi1.3.3
How to build DL_Poly intel compiler_10.1 and Ompi1.3.3
How to build DL_Poly intel compiler_10.1 and Ompi1.3.3
First of all we have to extrac the dl_poly pakages and copy MakePAR and MakeSEQ to srcf90.
Load the compiler and environment modules
module load OpenMPI/1.3.3_intel-10.1 intel/10.1
and edit makePAR:
Define the compiler parallel command:
BINROOT = ../execute
CC =mpicc
EX = DLPOLY.X
EXE = $(BINROOT)/$(EX)
FC=mpif90
SHELL=/bin/sh
TYPE=par
Insert the new target in the targets list:
all:
...
@echo "intel_compile (parallel)"
@echo " "
@echo "Please examine Makefile for details"
...
Define the new target compile optimization parameters flags:
intel_compile:
$(MAKE) FC=mpif90 FFLAGS="-c -w95 -w -O3 "\
CPFLAGS="-D$(STRESS) -DINTEL -D'POINTER=integer*8'"
$(MAKE) FC=mpif90 LD="mpif90 -o " FFLAGS="-w95 -w -c -O3 " \
CPFLAGS="-D$(STRESS) -DINTEL -D'POINTER=integer*8'" \
LDFLAGS="-I/opt/openmpi-1.3.3_intel10.1/include/ -L/opt/openmpi-1.3.3_in
tel10.1/lib/ -lmpi_f77 -lmpi" EX=$(EX) BINROOT=$(BINROOT) $(TYPE) TIMER=""
Finally compile:
cp MakePAR Makefile
make intel_compile 2>&1 | tee make_par.out
It's similar in serial version, edit MakeSEQ:
Define the compiler command
BINROOT = ../execute
CC = icc
EX = DLPOLY.X_serial
EXE = $(BINROOT)/$(EX)
FC=ifort
SHELL=/bin/sh
TYPE=seq
Insert the new target in the targets list:
all:
.....
@echo "intel-compile-serial (serial)"
@echo " "
.....
Define the new target compile optimization parameters flags:
....
intel-compile-serial:
$(MAKE) FC=ifort FFLAGS="-c -O3 -w95 -w " \
CPFLAGS="-D$(STRESS) -DSERIAL -DINTEL -D'POINTER=integer*8'"
$(MAKE) FC=ifort LD="ifort -o " FFLAGS="-w95 -w -c -O3 " \
CPFLAGS="-D$(STRESS) -DSERIAL -DINTEL -D'POINTER=integer*8'" \
LDFLAGS="-Vaxlib -static" \
EX=$(EX) BINROOT=$(BINROOT) $(TYPE)
....
And compile:
make clean
cp MakeSEQ Makefile
make intel-compile-serial 2>&1 | tee make_serial.out
we have our binary file in the parent directory.



