AMBER Archive (2004)

Subject: Re: AMBER: Question about compiling PMEMD

From: Robert Duke (rduke_at_email.unc.edu)
Date: Thu Apr 22 2004 - 06:35:45 CDT


Tod -
You are building a version of pmemd that uses mpi. I would guess that since the compiles went okay, and only the linking is failing, the problem is that the mpich you have is not compiled for use with your version of ifc. I have attached the pmemd 3 release notes; they are largely irrelevant to your problem at hand here, but include info on how to build mpich. They refer to 1.2.5, so there may be some gotcha's in building 1.2.4. Building mpich can be a pain. Good luck.
- Bob Duke
----- Original Message -----
  From: Tod Pascal
  To: amber_at_scripps.edu
  Sent: Thursday, April 22, 2004 2:29 AM
  Subject: RE: AMBER: Question about compiling PMEMD

  Professor Duke,
  Thanks for the information. I was able to download version 7.1 and got it installed. The code seems to compile all the way, however crashes at the linking stage with the following error:

   

  SYSLIB=`../sysdir lib` ; ../Compile LOAD -o pmemd \

                  gbl_datatypes.o file_io_dat.o parallel_dat.o mdin_ctrl_dat.o mdin_ewald_dat.o prmtop_dat.o inpcrd_dat.o gbl_dat.o ew_dat.o ew_direct_cit_dat.o ew_direct_dat.o ew_dipole_dat.o ew_direct_cit.o ew_recip_cit.o ew_fft_cit.o ew_force_cit.o ew_fft.o ew_bspline.o ew_box.o force_cit.o runmd_cit.o runmd_cit7.o shake_cit.o runmin_cit.o axis_optimize_cit.o ew_lib.o pmemd_lib.o runfiles.o file_io.o parallel.o ew_direct.o ew_recip.o ew_force.o ew_dipole.o ew_recip_dipole.o ew_recip_reg.o shake.o pmemd_clib.o pmemd.o random.o runmin.o force.o runmd.o degcnt.o nmr_calls.o nmr_lib.o get_cmdline.o master_setup.o alltasks_setup.o ew_setup.o nextprmtop_section.o help.o $SYSLIB;

   

  ifc -i_dynamic -o pmemd gbl_datatypes.o file_io_dat.o parallel_dat.o mdin_ctrl_dat.o mdin_ewald_dat.o prmtop_dat.o

  inpcrd_dat.o gbl_dat.o ew_dat.o ew_direct_cit_dat.o ew_direct_dat.o ew_dipole_dat.o ew_direct_cit.o ew_recip_cit.o

  ew_fft_cit.o ew_force_cit.o ew_fft.o ew_bspline.o ew_box.o force_cit.o runmd_cit.o runmd_cit7.o shake_cit.o runmin_cit.o axis_optimize_cit.o ew_lib.o pmemd_lib.o runfiles.o file_io.o parallel.o ew_direct.o ew_recip.o ew_force.o ew_dipole.o ew_recip_dipole.o ew_recip_reg.o shake.o pmemd_clib.o pmemd.o random.o runmin.o force.o runmd.o degcnt.o

  nmr_calls.o nmr_lib.o get_cmdline.o master_setup.o alltasks_setup.o ew_setup.o nextprmtop_section.o help.o ../Machines/intel/sys.a -limf -lsvml -lPEPCF90 -L/opt/mpich-1.2.4/lib -lpthread -lmpich

  parallel_dat.o: In function `parallel_dat_module..wrapped_cit_mpi_gathervec_.':

  parallel_dat.o(.text+0x1e2): undefined reference to `mpi_gatherv_'

  parallel_dat.o: In function `parallel_dat_module..wrapped_cit_mpi_allgathervec_.':

  parallel_dat.o(.text+0x5f1): undefined reference to `mpi_allgatherv_'

  mdin_ctrl_dat.o: In function `mdin_ctrl_dat_module..bcast_mdin_ctrl_dat_':

  mdin_ctrl_dat.o(.text+0x41): undefined reference to `mpi_bcast_'

  mdin_ctrl_dat.o(.text+0x84): undefined reference to `mpi_bcast_'

  mdin_ewald_dat.o: In function `mdin_ewald_dat_module..bcast_mdin_ewald_dat_':

  mdin_ewald_dat.o(.text+0x41): undefined reference to `mpi_bcast_'

  mdin_ewald_dat.o(.text+0x84): undefined reference to `mpi_bcast_'

   

  And so on. I think that I might be missing a library, but haven't been able to figure out what's wrong. Any ideas?

   

  Regards,

  Tod

   

  The glass is neither half empty nor half full. It was simply designed too large to begin with.
  -- Some Engineer

   

------------------------------------------------------------------------------

  From: owner-amber_at_scripps.edu [mailto:owner-amber_at_scripps.edu] On Behalf Of Robert Duke
  Sent: Wednesday, April 21, 2004 5:27 AM
  To: amber_at_scripps.edu
  Subject: Re: AMBER: Question about compiling PMEMD

   

  Tod -

  There is no workaround. Period. I tried. The 8.0 compiler is really messed up for some inputs (my guess would be f90 code that makes use of lots of modules, which is what distinguishes pmemd from the rest of amber). So you should have gotten a chance to set up some sort of semi-support account when you got ifort (or full support if you bought it). Using that account go to https://premier.intel.com website, log in, and get through the confidentiality page, ending up on your account page. Ignore the "what's new" page(s) of downloads that comes up (you want something old). To the left, under premier features, click on "file downloads". Look down the filelist to stuff released 1/8/2004. Click on l_fc_pc_7.1.038.tar and download it. Don't lose it, in case they remove it from the site before they fix its successors. The status on the intel compilers is that 8.0 is broken in regards to pmemd, and may not be fixed until they release 8.1, and 7.1.038 is the last working version of 7.1 with regards to pmemd (they broke the later releases, and don't consider the fixes critical, since there is a workaround). Regarding intel compilers, I would grab versions that work and not get rid of them until I am certain the next thing is okay. Intel seems to have recently lost the ability to actually achieve a net reduction in their compiler defects. They also have superceded working versions of the itanium ifort 8.0 compilers with broken ones, so you have to watch out there. Note that for the itanium, though, the 8.0 compilers in general DO work. The bulk of the problems seem to be arising in grafting the compaq compiler frontend on top of their IA32 backend, which is what happened in 8.0. They did the same thing for the itanium, but seem to have not had as much trouble there.

  Regards - Bob Duke

    ----- Original Message -----

    From: Tod Pascal

    To: amber_at_scripps.edu

    Sent: Wednesday, April 21, 2004 3:21 AM

    Subject: AMBER: Question about compiling PMEMD

     

    Hello All,

    I'm trying to install PMEMD on a P4 Red Hat 8 cluster (with MPI) using the IFC 8.0. I'm aware that there is a bug that prevents the installation, however I was hoping there was a work-around, since the version of IFC I've gotten from Intel is version 8 (and I'm unaware how to obtain version 7.1). The installation crashes with the following error:

     

    ../Compile L3 -P ew_direct_cit_dat.f90

    cat ew_direct_cit_dat.f90 | /lib/cpp -traditional -I/opt/mpich-1.2.4//include

     -P -DLinux -DREGNML -DMPI -DNO_MPI_BUFFER_ALIASING -DSLOW_NONBLOCKING_MPI -D

    SHORT=INTEGER(2) -DLOGICAL_BYTE=LOGICAL(1) > _ew_direct_cit_dat_.f90

    ifc -c -auto -tpp6 -mp1 -ip -O3 _ew_direct_cit_dat_.f90

    ifc: warning: The Intel Fortran driver is now named ifort. You can suppress th

    is message with '-quiet'

    fortcom: Severe: _ew_direct_cit_dat_.f90, line 81: **Internal compiler error: s

    egmentation violation signal raised** Please report this error along with the c

    ircumstances in which it occurred in a Software Problem Report. Note: File and

     line given may not be explicit cause of this error.

    contains

    ^

    compilation aborted for _ew_direct_cit_dat_.f90 (code 3)

    make[1]: *** [ew_direct_cit_dat.o] Error 1

    make[1]: Leaving directory `/net/hulk/home3/tpascal/amber7/src.pmemd/pmemd'

     

     

    Is this error familiar, and if so do you have any suggestions? I've tried compiling this file with a lower level of optimization (from L0 - L3) to no avail.

     

    Regards,

     

    Tod

     

    The glass is neither half empty nor half full. It was simply designed too large to begin with.
    -- Some Engineer

     



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