From 9f3c710ceb44df5f009b28ea60ae3f70a810d43f Mon Sep 17 00:00:00 2001 From: Cezary Czaplewski Date: Sat, 6 Jun 2020 23:43:01 +0200 Subject: [PATCH] DFA parallel correction --- source/unres/src-HCD-5D/Makefile | 2 +- source/unres/src-HCD-5D/Makefile_MPICH_ifort | 120 +++++++++++++++++------- source/unres/src-HCD-5D/energy_p_new_barrier.F | 8 +- 3 files changed, 91 insertions(+), 39 deletions(-) diff --git a/source/unres/src-HCD-5D/Makefile b/source/unres/src-HCD-5D/Makefile index 2124a4e..8453cdd 120000 --- a/source/unres/src-HCD-5D/Makefile +++ b/source/unres/src-HCD-5D/Makefile @@ -1 +1 @@ -Makefile_MPICH_ifort-tryton \ No newline at end of file +Makefile_MPICH_ifort \ No newline at end of file diff --git a/source/unres/src-HCD-5D/Makefile_MPICH_ifort b/source/unres/src-HCD-5D/Makefile_MPICH_ifort index 4818bc7..8f00b68 100644 --- a/source/unres/src-HCD-5D/Makefile_MPICH_ifort +++ b/source/unres/src-HCD-5D/Makefile_MPICH_ifort @@ -1,27 +1,28 @@ ################################################################### -#INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh +#INSTALL_DIR = /opt/cray/mpt/7.3.2/gni/mpich-intel/15.0 +FC = mpif90 -fc=ifort -FC= ifort +OPT = -O3 -ip -mcmodel=medium -shared-intel +#OPT = -g -CA -CB -mcmodel=medium -shared-intel -OPT = -O3 -ip -#OPT = -g -CA -CB +FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include +FFLAGS1 = -c -g -CA -CB -mcmodel=medium -shared-intel +#FFLAGS1 = ${FFLAGS} +FFLAGS2 = -c -g -O0 -mcmodel=medium -shared-intel +FFLAGSE = -c -O3 -ipo -mcmodel=medium -shared-intel +#FFLAGSE = ${FFLAGS} -FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include -FFLAGS1 = -c -g -CA -CB -I$(INSTALL_DIR)/include -FFLAGS2 = -c -g -O0 -I$(INSTALL_DIR)/include -FFLAGSE = -c -O3 -ipo -opt_report -I$(INSTALL_DIR)/include -FFLAGSE = ${FFLAGS} - -LIBS = -L$(INSTALL_DIR)/lib -lmpich xdrf/libxdrf.a +#LIBS = -L$(INSTALL_DIR)/lib -lmpi xdrf/libxdrf.a +LIBS = -lmpi xdrf/libxdrf.a +#/opt/cray/mpt/7.3.2/gni/mpich-intel/15.0/lib/libmpich.a ARCH = LINUX PP = /lib/cpp -P - all: no_option - @echo "Specify force field: GAB, 4P or E0LL2Y" + @echo "Specify force field: GAB, 4P, E0LL2Y or NEWCORR" .SUFFIXES: .F .F.o: @@ -30,65 +31,107 @@ all: no_option object = unres.o arcos.o cartprint.o chainbuild.o convert.o initialize_p.o \ matmult.o readrtns_CSA.o parmread.o gen_rand_conf.o printmat.o map.o \ - pinorm.o randgens.o rescode.o intcor.o timing.o misc.o intlocal.o \ - cartder.o checkder_p.o econstr_local.o energy_p_new_barrier.o \ + pinorm.o randgens.o rescode.o intcor.o timing.o misc.o \ + cart2intgrad.o checkder_p.o contact_cp.o econstr_local.o econstr_qlike.o \ + econstrq-PMF.o PMFprocess.o energy_p_new_barrier.o make_xx_list.o \ energy_p_new-sep_barrier.o gradient_p.o minimize_p.o sumsld.o \ - cored.o rmdd.o geomout.o readpdb.o permut.o regularize.o thread.o fitsq.o mcm.o \ - mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o djacob.o \ + cored.o rmdd.o geomout.o readpdb-mult.o int_from_cart.o regularize.o \ + thread.o fitsq.o mcm.o \ + mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o \ eigen.o blas.o add.o entmcm.o minim_mcmf.o \ together.o csa.o minim_jlee.o shift.o diff12.o bank.o newconf.o ran.o \ indexx.o MP.o compare_s1.o prng_32.o \ - test.o banach.o distfit.o rmsd.o elecont.o dihed_cons.o \ - sc_move.o local_move.o \ + banach.o rmsd.o rmscalc.o elecont.o dihed_cons.o \ + sc_move.o local_move.o djacob.o \ intcartderiv.o lagrangian_lesyng.o\ + chain_symmetry.o permut.o seq2chains.o iperm.o\ stochfric.o kinetic_lesyng.o MD_A-MTS.o moments.o int_to_cart.o \ surfatom.o sort.o muca_md.o MREMD.o rattle.o gauss.o energy_split-sep.o \ - q_measure.o gnmr1.o ssMD.o + q_measure.o gnmr1.o mygauss.o ssMD.o + +object_lbfgs = inform.o iounit.o keys.o linmin.o math.o minima.o scales.o output.o lbfgs.o search.o optsave_dum.o no_option: GAB: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ - -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -GAB: BIN = /users/adam/bin/unres/MD/unres-mult-symetr_KCC_ifort_MPICH_GAB.exe + -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DFOURBODY +GAB: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD.exe GAB: ${object} xdrf/libxdrf.a - cc -o compinfo compinfo.c + gcc -o compinfo compinfo.c ./compinfo | true ${FC} ${FFLAGS} cinfo.f ${FC} ${OPT} ${object} cinfo.o ${LIBS} -o ${BIN} 4P: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ - -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -4P: BIN = /users/adam/bin/unres-mult-symetr_KCC_ifort_MPICH_4P.exe + -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DFOURBODY +4P: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD.exe 4P: ${object} xdrf/libxdrf.a - cc -o compinfo compinfo.c + gcc -o compinfo compinfo.c ./compinfo | true ${FC} ${FFLAGS} cinfo.f ${FC} ${OPT} ${object} cinfo.o ${LIBS} -o ${BIN} E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ - -DSPLITELE -DLANG0 -E0LL2Y: BIN = /users/adam/bin/unres-mult-symetr_KCC_ifort_MPICH_E0LL2Y.exe + -DSPLITELE -DLANG0 -DFOURBODY +E0LL2Y: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD.exe E0LL2Y: ${object} xdrf/libxdrf.a - cc -o compinfo compinfo.c + gcc -o compinfo compinfo.c ./compinfo | true ${FC} ${FFLAGS} cinfo.f ${FC} ${OPT} ${object} cinfo.o ${LIBS} -o ${BIN} +E0LL2Y_DFA: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ + -DSPLITELE -DLANG0 -DFOURBODY -DDFA +E0LL2Y_DFA: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD-DFA.exe +E0LL2Y_DFA: ${object} dfa.o xdrf/libxdrf.a + gcc -o compinfo compinfo.c + ./compinfo | true + ${FC} ${FFLAGS} cinfo.f + ${FC} ${OPT} ${object} dfa.o cinfo.o ${LIBS} -o ${BIN} + NEWCORR: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ - -DSPLITELE -DLANG0 -DNEWCORR -NEWCORR: BIN = /users/adam/bin/unres-mult-symetr_KCC_ifort_MPICH_E0LL2Y-NEWCORR.exe + -DSPLITELE -DLANG0 -DNEWCORR -DCORRCD #-DFOURBODY #-DMYGAUSS #-DTIMING +NEWCORR: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD.exe NEWCORR: ${object} xdrf/libxdrf.a - cc -o compinfo compinfo.c + gcc -o compinfo compinfo.c ./compinfo | true ${FC} ${FFLAGS} cinfo.f - ${FC} ${OPT} ${object} cinfo.o ${LIBS} -o ${BIN} + ${FC} ${OPT} ${object} cinfo.o ${LIBS} -o ${BIN} + +NEWCORR5D: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ + -DSPLITELE -DLANG0 -DNEWCORR -DCORRCD -DFIVEDIAG -DLBFGS #-DMYGAUSS #-DTIMING +NEWCORR5D: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD5.exe +NEWCORR5D: ${object_lbfgs} ${object} fdisy.o fdiag.o machpd.o kinetic_CASC.o xdrf/libxdrf.a + gcc -o compinfo compinfo.c + ./compinfo | true + ${FC} ${FFLAGS} cinfo.f + ${FC} ${OPT} ${object} ${object_lbfgs} fdisy.o fdiag.o machpd.o kinetic_CASC.o cinfo.o ${LIBS} -o ${BIN} +#${FC} ${OPT} ${object} ${object_lbfgs} fdisy.o fdiag.o machpd.o kinetic_CASC.o cinfo.o ${LIBS} -Wl,-M -o ${BIN} + +NEWCORR_DFA: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ + -DSPLITELE -DLANG0 -DNEWCORR -DCORRCD -DDFA #-DMYGAUSS #-DTIMING +NEWCORR_DFA: BIN = ~/bin/unres_ifort_MPICH-tryton-HCD-DFA.exe +NEWCORR_DFA: ${object} dfa.o xdrf/libxdrf.a + gcc -o compinfo compinfo.c + ./compinfo | true + ${FC} ${FFLAGS} cinfo.f + ${FC} ${OPT} ${object} dfa.o cinfo.o ${LIBS} -o ${BIN} + +NEWCORR5D_DFA: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \ + -DSPLITELE -DLANG0 -DNEWCORR -DCORRCD -DFIVEDIAG -DLBFGS -DDFA #-DMYGAUSS #-DTIMING +NEWCORR5D_DFA: BIN = unres_ifort_MPICH-tryton-HCD5-DFA.exe +NEWCORR5D_DFA: ${object_lbfgs} ${object} dfa.o fdisy.o fdiag.o machpd.o kinetic_CASC.o xdrf/libxdrf.a + gcc -o compinfo compinfo.c + ./compinfo | true + ${FC} ${FFLAGS} cinfo.f + ${FC} ${OPT} ${object_lbfgs} ${object} fdisy.o fdiag.o machpd.o dfa.o kinetic_CASC.o cinfo.o ${LIBS} -o ${BIN} xdrf/libxdrf.a: cd xdrf && make clean: - /bin/rm -f *.o && /bin/rm -f compinfo && cd xdrf && make clean + /bin/rm -f *.o *.mod && /bin/rm -f compinfo && cd xdrf && make clean test.o: test.F ${FC} ${FFLAGS} ${CPPFLAGS} test.F @@ -96,6 +139,9 @@ test.o: test.F chainbuild.o: chainbuild.F ${FC} ${FFLAGS} ${CPPFLAGS} chainbuild.F +djacob.o: djacob.f + ${FC} ${FFLAGS2} djacob.f + matmult.o: matmult.f ${FC} ${FFLAGS} ${CPPFLAGS} matmult.f @@ -111,6 +157,9 @@ cartder.o : cartder.F readpdb.o : readpdb.F ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb.F +readpdb-mult.o : readpdb-mult.F + ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb-mult.F + sumsld.o : sumsld.f ${FC} ${FFLAGS} ${CPPFLAGS} sumsld.f @@ -144,5 +193,8 @@ add.o : add.f eigen.o : eigen.f ${FC} ${FFLAGS2} eigen.f +dfa.o: dfa.F + ${FC} ${FFLAGS} ${CPPFLAGS} dfa.F + proc_proc.o: proc_proc.c ${CC} ${CFLAGS} proc_proc.c diff --git a/source/unres/src-HCD-5D/energy_p_new_barrier.F b/source/unres/src-HCD-5D/energy_p_new_barrier.F index 2c701ca..0701f52 100644 --- a/source/unres/src-HCD-5D/energy_p_new_barrier.F +++ b/source/unres/src-HCD-5D/energy_p_new_barrier.F @@ -103,10 +103,10 @@ C FG slaves receive the WEIGHTS array wliptran=weights(22) wtube=weights(25) wsaxs=weights(26) - wdfa_dist=weights_(28) - wdfa_tor=weights_(29) - wdfa_nei=weights_(30) - wdfa_beta=weights_(31) + wdfa_dist=weights(28) + wdfa_tor=weights(29) + wdfa_nei=weights(30) + wdfa_beta=weights(31) endif time_Bcast=time_Bcast+MPI_Wtime()-time00 time_Bcastw=time_Bcastw+MPI_Wtime()-time00 -- 1.7.9.5