AMBER Archive (2008)

Subject: Re: AMBER: AMBER10 failing to compile PMEMD

From: Robert Duke (rduke_at_email.unc.edu)
Date: Sat Nov 22 2008 - 16:42:50 CST


Well, without seeing what you actually DID to config.h, it is really hard to
guess... Three points: 1) it looks like the name mangling specified for c
is messed up - ie., the stuff that is not being found is c functions in the
pmemd code itself. Perhaps you changed some of the manifest constants in
config.h?, 2) looks like fftw is not being resolved properly - I would just
use the pubfft if I were you -the difference in performance is not that
great, mostly noticeable on a single processor (or be sure you meet all the
requirements for using fftw and have things properly configured and have the
supported versions of fftw), and 3) this is a sore point (probably both for
me and my users, for different reasons). I don't have a simple config for
openmpi, which puts you all in the game of mangling the config.h to modify
something else in a manner that will work for openmpi. Now, this is a sore
point because I DO support lam, mpich, and mpich2, ALL of which work very
well, and all of which may even be faster than openmpi (I am not sure for
gigabit ethernet, but I say this because I know that the openmpi performance
is basically horrible under infiniband). So there are lots of other options
that would make this simpler... I do not actually see an mpi-related
problem here, yet... You don't specify whether you have gcc or icc as the c
compiler in the config.h. In general, gcc works fine and icc is not
necessary. It is generally helpful to look at the pmemd README for
clarification on some of this stuff.
Regards - Bob Duke
----- Original Message -----
From: "Hazard, E. Starr" <hazards_at_musc.edu>
To: <amber_at_scripps.edu>
Sent: Saturday, November 22, 2008 5:06 PM
Subject: AMBER: AMBER10 failing to compile PMEMD

> Folks,
>
> I have compiled parallel AMBER 10 using openmpi-1.2.8 and intel
> compilers.
>
> Here are some records of what's defined on my system.
>
> ifort -V
> Intel(R) Fortran Compiler for applications running on Intel(R) 64, Version
> 10.0 Build 20070426 Package ID: l_fc_p_10.0.023
> Copyright (C) 1985-2007 Intel Corporation. All rights reserved.
> FOR NON-COMMERCIAL USE ONLY
>
> icc -V
> Intel(R) C Compiler for applications running on Intel(R) 64, Version 10.1
> Build 20070913 Package ID: l_cc_p_10.1.008
> Copyright (C) 1985-2007 Intel Corporation. All rights reserved.
> FOR NON-COMMERCIAL USE ONLY
>
> gcc -v
> Reading specs from /usr/lib/gcc/x86_64-redhat-linux/3.4.6/specs
> Configured with:
> ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
> --enable-shared --enable-threads=posix --disable-checking --with-system-zlib
> --enable-__cxa_atexit --disable-libunwind-exceptions --enable-java-awt=gtk
> --host=x86_64-redhat-linux
> Thread model: posix
> gcc version 3.4.6 20060404 (Red Hat 3.4.6-3)
>
> cat /etc/redhat-release
> Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
>
> uname -a
> Linux hpcc2-head1.mdc.musc.edu 2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:32:02
> EDT 2006 x86_64 x86_64 x86_64 GNU/Linux
>
> cat /proc/cpuinfo
> .
> .
> .
> cpu family : 6
> model : 15
> model name : Intel(R) Xeon(R) CPU E5345 @ 2.33GHz
> .
> .
> .
>
> echo $MKL_HOME
> /opt/intel/mkl/10.0..011
>
> which mpirun
> /share/apps/openmpi-1.2.8/bin/mpirun
>
> mpif90 -show
> ifort -I/share/apps/openmpi-1.2.8/include -pthread -I/share/apps/openmpi-1.2.8/lib
> -L/share/apps/openmpi-1.2.8/lib -lmpi_f90 -lmpi_f77 -lmpi -lopen-rte -lopen-pal
> -ldl -Wl,--export-dynamic -lnsl -lutil
>
> cd $AMBERHOME/src/pmemd/
>
> then
>
> ./configure linux_em64t ifort lam fftw bintraj
>
> I edited config.h following
>
> http://archive.ambermd.org/200805/0617.html
>
> Then at the end of compiling pmemd I find these errors:
>
> .
> .
> .
> ifort: command line remark #10148: option '-tp' not supported
> mpif90 -o pmemd gbl_constants.o gbl_datatypes.o state_info.o
> file_io_dat.o mdin_ctrl_dat.o mdin_ewald_dat.o prmtop_dat.o inpcrd_dat.o
> dynamics_dat.o img.o parallel_dat.o parallel.o gb_parallel.o pme_direct.o
> pme_recip_dat.o pme_slab_recip.o pme_blk_recip.o pme_slab_fft.o
> pme_blk_fft.o pme_fft_dat.o fft1d.o bspline.o pme_force.o pbc.o
> nb_pairlist.o nb_exclusions.o cit.o dynamics.o bonds.o angles.o
> dihedrals.o extra_pnts_nb14.o runmd.o loadbal.o shake.o prfs.o mol_list.o
> runmin.o constraints.o axis_optimize.o gb_ene.o veclib.o gb_force.o
> timers.o pmemd_lib.o runfiles.o file_io.o bintraj.o pmemd_clib.o pmemd.o
> random.o degcnt.o erfcfun.o nmr_calls.o nmr_lib.o get_cmdline.o
> master_setup.o pme_alltasks_setup.o pme_setup.o ene_frc_splines.o
> gb_alltasks_setup.o
> nextprmtop_section.o -L/share/apps/libraries/fftw/fftw-3.2/lib -lfftw3
> /home/hazards/COMPILE/amber10/src/netcdf/lib/libnetcdf.a
> /opt/intel/mkl/10.0.011/lib/em64t/libmkl_intel_lp64.a
> /opt/intel/mkl/10.0.011/lib/em64t/libmk!
> l_!
> core.a
> /opt/intel/mkl/10.0.011/lib/em64t/libmkl_sequential.a -L/share/apps/openmpi-1.2.8/lib
> -limf -lsvml -Wl,-rpath=/opt/intel/cce/10.1.008/lib:/opt/intel/fce/10.0.023/lib:/opt/intel/mkl/10.0.011/lib/em64t:/share/apps/ccp4-6.0.2/lib:/opt/openmpi/1.1.4/lib:/opt/lava/6.1/linux2.6-glibc2.3-ia32e/lib
> prmtop_dat.o(.text+0xfe7): In function
> `prmtop_dat_mod_mp_bcast_amber_prmtop_dat_':
> : undefined reference to `get_bytesize_'
> prmtop_dat.o(.text+0x104b): In function
> `prmtop_dat_mod_mp_bcast_amber_prmtop_dat_':
> : undefined reference to `get_bytesize_'
> prmtop_dat.o(.text+0x10ab): In function
> `prmtop_dat_mod_mp_bcast_amber_prmtop_dat_':
> : undefined reference to `get_bytesize_'
> fft1d.o(.text+0x1da): In function `fft1d_mod_mp_fft1d_back_':
> : undefined reference to `dfftw_execute_dft_'
> fft1d.o(.text+0x1ee): In function `fft1d_mod_mp_fft1d_forward_':
> : undefined reference to `dfftw_execute_dft_'
> fft1d.o(.text+0x1ff): In function `fft1d_mod_mp_fft1d_destroy_':
> : undefined reference to `dfftw_destroy_plan_'
> fft1d.o(.text+0x20d): In function `fft1d_mod_mp_fft1d_destroy_':
> : undefined reference to `dfftw_destroy_plan_'
> fft1d.o(.text+0x35a): In function `fft1d_mod_mp_fft1d_create_':
> : undefined reference to `dfftw_plan_dft_1d_'
> fft1d.o(.text+0x37f): In function `fft1d_mod_mp_fft1d_create_':
> : undefined reference to `dfftw_plan_dft_1d_'
> extra_pnts_nb14.o(.text+0x6037): In function
> `extra_pnts_nb14_mod_mp_bcast_extra_pnts_nb14_dat_':
> : undefined reference to `get_bytesize_'
> loadbal.o(.text+0x42e1): In function
> `loadbal_mod_mp_update_loadbal_timer_':
> : undefined reference to `get_wall_time_'
> loadbal.o(.text+0x4348): In function
> `loadbal_mod_mp_start_loadbal_timer_':
> : undefined reference to `get_wall_time_'
> runmin.o(.text+0x34fa): In function `runmin_mod_mp_printe_':
> : undefined reference to `get_wall_time_'
> runfiles.o(.text+0x691): In function `runfiles_mod_mp_prntmd_':
> : undefined reference to `get_wall_time_'
> pmemd_clib.o(.eh_frame+0x12): undefined reference to
> `__gxx_personality_v0'
> pmemd.o(.text+0x95): In function `MAIN__':
> : undefined reference to `unlimit_stack_'
> make[1]: *** [pmemd] Error 1
> make[1]: Leaving directory `COMPILE/amber10/src/pmemd/src'
> make: *** [all] Error 2
>
> It looks like it got close and then gave up. What am I doing wrong?
>
> Starr
> -----------------------------------------------------------------------
> The AMBER Mail Reflector
> To post, send mail to amber_at_scripps.edu
> To unsubscribe, send "unsubscribe amber" (in the *body* of the email)
> to majordomo_at_scripps.edu
>

-----------------------------------------------------------------------
The AMBER Mail Reflector
To post, send mail to amber_at_scripps.edu
To unsubscribe, send "unsubscribe amber" (in the *body* of the email)
      to majordomo_at_scripps.edu