AMBER Archive (2007)

Subject: RE: AMBER: problem compiling Amber9 on 64-machine

From: Ross Walker (ross_at_rosswalker.co.uk)
Date: Wed Aug 01 2007 - 11:10:17 CDT


Dear Fatima,

Note that the configure script will force 32 bit compilation with PGF90
(adds -tp p7). The reason for this is that at the time of AMBER9's release
there were several bugs in the 64 bit implementation of the Portland group
compiler and the only workaround that could be found was to force 32 bit
compilation.

The key point here is that this means you must link against 32 bit libraries
so you need to make sure you installed the 32 bit compatible libraries when
you installed the x86_64 OS. You also need to build the MPi library with the
same options (I.e. force it to have -tp p7) so it builds 32 bit.

The other option would be to try editing the config.h file and removing all
the "-tp p7" flags and then making clean and trying again - this will then
built a 64 bit executable BUT make sure you run ALL the test cases, both
serial AND parallel and make sure you check all failures VERY carefully
since otherwise you could end up running simulations that give completely
the wrong answer.

All the best
Ross

/\
\/
|\oss Walker

| HPC Consultant and Staff Scientist |
| San Diego Supercomputer Center |
| Tel: +1 858 822 0854 | EMail:- ross_at_rosswalker.co.uk |
| http://www.rosswalker.co.uk | PGP Key available on request |

Note: Electronic Mail is not secure, has no guarantee of delivery, may not
be read every day, and should not be used for urgent or sensitive issues.

> -----Original Message-----
> From: owner-amber_at_scripps.edu
> [mailto:owner-amber_at_scripps.edu] On Behalf Of
> fatima.chami_at_durham.ac.uk
> Sent: Wednesday, August 01, 2007 08:55
> To: amber_at_scripps.edu
> Subject: Re: AMBER: problem compiling Amber9 on 64-machine
>
> Hi,
>
> how did you get the serial version to work using pgf90 cause
> it did not work
> for me on 64 bits machine
>
> fatima
>
>
> Quoting "S.Sundar Raman" <sundar02_at_gmail.com>:
>
> > dear amber experts
> >
> > I am also trying to install amber9 in amd opteron processor
> with pgf90
> > compiler. Serial version of amber9 compiled and worked
> fine. When I am
> > trying to compile the parallel version i am getting the
> following troubles.
> > First i try to install open mpi latest version. When i
> compiled with pgf90,
> > I found the following error.
> >
> >
> >
> > make[2]: Entering directory `/usr/local/openmpi-1.2.3/ompi/mpi/f90'
> >
> > /bin/sh ../../../libtool --mode=link pgf90 -I../../../ompi/include
> > -I../../../ompi/include -I. -I. -I../../../ompi/mpi/f90
> -export-dynamic -o
> > libmpi_f90.la -rpath /usr/local/mpi/lib mpi.lo mpi_sizeof.lo
> > mpi_comm_spawn_multiple_f90.lo mpi_testall_f90.lo
> mpi_testsome_f90.lo
> > mpi_waitall_f90.lo mpi_waitsome_f90.lo mpi_wtick_f90.lo
> mpi_wtime_f90.lo
> > -lnsl -lutil -lm
> >
> > libtool: link: pgf90 -shared -fPIC -Mnomain .libs/mpi.o
> .libs/mpi_sizeof.o
> > .libs/mpi_comm_spawn_multiple
> >
> > f90.o .libs/mpi_testall_f90.o .libs/mpi_testsome_f90.o
> > .libs/mpi_waitall_f90.o .libs/mpi_waitsome_f90.o
> .libs/mpi_wtick_f90.o
> > .libs/mpi_wtime_f90.o -lnsl -lutil -lm -Wl,-soname
> -Wl,libmpi_f90.so.0 -o
> > .libs/libmpi_f90.so.0.0.0
> >
> > /usr/bin/ld: .libs/mpi.o: relocation R_X86_64_PC32 against
> `__pgio_ini' can
> > not be used when making a shared object; recompile with -fPIC
> >
> > /usr/bin/ld: final link failed: Bad value
> >
> > make[2]: *** [libmpi_f90.la] Error 2
> >
> > make[2]: Leaving directory `/usr/local/openmpi-1.2.3/ompi/mpi/f90'
> >
> > make[1]: *** [all-recursive] Error 1
> >
> > make[1]: Leaving directory `/usr/local/openmpi-1.2.3/ompi/mpi/f90'
> >
> > make: *** [all] Error 2
> >
> > therefore i tried to use lam,
> >
> > i compiled lam with pgf90 compiler and it was compiled
> successfully. but
> > when i m trying to compile amber using lam with pgf90 i
> ended up with the
> > following error
> >
> >
> > make[3]: Leaving directory `/amber/amber9/src/lmod/lmod'
> > ar rv lmod.a xmin/*.o lmod/*.o
> > r - xmin/xmin.o
> > r - lmod/lmod.o
> > ranlib lmod.a
> > make[2]: Leaving directory `/amber/amber9/src/lmod'
> > cd ../lmod; cp lmodprmtop ../../exe; chmod 0755 ../../exe/lmodprmtop
> > pgf90 -tp p7 -Mfree -o sander.MPI evb_vars.o evb_input.o
> evb_init.o
> > evb_alloc.o evb_dealloc.o check_input.o evb_io.o
> evb_keywrd.o exchange_CM.o
> > evb_mcp.o evb_force.o diabatic.o evb_2stdebug.o egap_umb_2stdebug.o
> > exchange_gauss.o exchange_warshel.o morsify.o
> morse_anal2num.o evb_matrix.o
> > evb_ntrfc.o out_evb.o constants.o stack.o qmmm_module.o
> trace.o lmod.o
> > decomp.o icosasurf.o egb.o findmask.o pb_force.o pb_exmol.o
> pb_mpfrc.o
> > pb_direct.o pb_list.o np_force.o sa_driver.o relax_mat.o
> nmr.o multisander.o
> > sander.o trajene.o cshf.o nmrcal.o pearsn.o printe.o
> runmin.o rdparm.o
> > mdread.o locmem.o runmd.o getcor.o degcnt.o decnvh.o
> fastwt.o parallel.o
> > shake.o ene.o mdwrit.o minrit.o set.o dynlib.o mdfil.o
> nmlsrc.o ew_force.o
> > ew_setup.o ew_box.o ew_bspline.o ew_fft.o nonbond_list.o short_ene.o
> > ew_recip.o pcshift.o align.o rfree.o rgroup.o random.o amopen.o
> > debug.oew_recip_reg.o ew_handle_dips.o ew_dipole_recip.o
> > mexit.o new_time.o extra_pts.o thermo_int.o matinv.o assert.o
> > mmtsb.ommtsb_client.o
> > erfcfun.o veclib.o is_init.o constantph.o prn_dipoles.o ips.o
> > sglds.oamoeba_valence.o amoeba_multipoles.o amoeba_recip.o
> > amoeba_interface.o
> > amoeba_direct.o amoeba_mdin.o amoeba_adjust.o amoeba_self.o
> amoeba_vdw.o
> > amoeba_induced.o amoeba_runmd.o bintraj.o spatial_recip.o
> spatial_fft.o
> > parms.o qm_mm.o qm_link_atoms.o qm_nb_list.o
> qm_extract_coords.o qm_ewald.o
> > qm_gb.o qm_zero_charges.o qm_print_info.o qm_assign_atom_types.o
> > qm2_allocate_e_repul.o qm2_calc_charges.o qm2_calc_rij_and_eqns.o
> > qm2_dihed.o qm2_energy.o qm2_fock.o qm2_get_qm_forces.o
> > qm2_get_qmmm_forces.o qm2_h1elec.o qm2_hcore_qmqm.o qm2_hcore_qmmm.o
> > qm2_identify_peptide_links.o qm2_load_params_and_allocate.o
> qm2_repp.o
> > qm2_rotate_qmqm.o qm2_scf.o qm2_setup_orb_exp.o
> qm2_smallest_number.o
> > qm2_dftb_module.o qm2_dftb_broyden.o qm2_dftb_dispersion_egr.o
> > qm2_dftb_dispersion_params.o qm2_dftb_dispersionread.o
> qm2_dftb_eglcao.o
> > qm2_dftb_energy.o qm2_dftb_ewevge.o qm2_dftb_externalchgrad.o
> > qm2_dftb_externalshift.o qm2_dftb_fermi.o qm2_dftb_forces.o
> qm2_dftb_gamma.o
> > qm2_dftb_gammamat.o qm2_dftb_get_qmmm_forces.o qm2_dftb_gettab.o
> > qm2_dftb_load_params.o qm2_dftb_long_range.o qm2_dftb_main.o
> > qm2_dftb_my_gradient.o qm2_dftb_my_mulliken.o qm2_dftb_repulsiv.o
> > qm2_dftb_self.o qm2_dftb_shift.o qm2_dftb_short_range.o
> qm2_dftb_skpar.o
> > qm2_dftb_slkode.o qm2_dftb_slktrafo.o \
> > qm_div.o force.o \
> > ../lmod/lmod.a ../lapack/lapack.a ../blas/blas.a \
> > ../lib/nxtsec.o ../lib/sys.a -L/opt/lam/gnu/lib
> -L/root/test/lam-
> > 7.1.4/build1/lib -llammpio -llamf77mpi -lmpi -llam -lutil
> -ldl -lpthread
> > /usr/bin/ld: skipping incompatible
> /opt/lam/gnu/lib/liblammpio.a when
> > searching for -llammpio
> > /usr/bin/ld: skipping incompatible
> > /root/test/lam-7.1.4/build1/lib/liblammpio.a
> > when searching for -llammpio
> > /usr/bin/ld: cannot find -llammpio
> > make[1]: *** [sander.MPI] Error 2
> > make[1]: Leaving directory `/amber/amber9/src/sander'
> > make: *** [parallel] Error 2
> >
> >
> > I don't know how to solve this problem. Therefore I am
> looking for a help
> > from amber experts.
> >
> > Thank you
> >
> > Eagerly waiting for you reply
> > --
> > S.Sundar Raman
> > Chemical Lab,
> > CLRI
> > Chennai-20
> > ph: 044-24411830
> >
>
>
> --------------------------------------------------------------
> ---------
> The AMBER Mail Reflector
> To post, send mail to amber_at_scripps.edu
> To unsubscribe, send "unsubscribe amber" to majordomo_at_scripps.edu
>

-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber_at_scripps.edu
To unsubscribe, send "unsubscribe amber" to majordomo_at_scripps.edu