Re: [AMBER] Passing the free-format flag to files in sander and nmode

From: Jason Swails <jason.swails.gmail.com>
Date: Thu, 10 Nov 2011 09:33:46 -0500

On Thu, Nov 10, 2011 at 3:03 AM, Michael Sternberg <sternberg.anl.gov>wrote:

> On Nov 9, 2011, at 23:51 , Jason Swails wrote:
>
> > One thing that may complicate things here. The flag names and ordering
> changed significantly between AmberTools 1.4/Amber 11 release and
> AmberTools 1.5 release. The result was that a script had to be written to
> patch up the config.h file created by AT 1.5 to get it to compile Amber 11.
> This is the AT15_Amber11.py script in $AMBERHOME. You need to run this
> script after each time you run configure in order to compile the Amber
> portion.
>
> Sure, I read and followed the instructions. I'm following David's
> suggestion with GNU compilers ...
>
> Here's a snippet from my build script. Are you saying I need to re-run
> AT15_Amber11.py right before step (4)?
>
> ==============================================
> # (1) AmberTools serial
> cd $prefix/AmberTools/src
> #./configure intel
> ./configure gnu
> make install
>
> # (2) Amber main serial; first apply AmberTools patch
> cd $prefix
> python $build_root/patched/amber11/AT15_Amber11.py
> cd $prefix/src
> make serial
>
> exit
>
> # (3) AmberTools parallel
> # "you must first configure and build a serial AmberTools."
>
> # for parallel, give access to newly provided byacc (and whatever else)
> export PATH=$prefix/bin:$PATH
>
> cd $prefix/AmberTools/src
> make clean
> #./configure -mpi intel
> ./configure -mpi gnu
> make install
>
> # (4) Amber main parallel
> cd $prefix/src
>

There should be a make clean here as well. The errors below look like
leftovers from a previous install. err_code_mpi is defined in
parallel_dat.fpp, but it is enclosed in an #ifdef MPI PP directive. If you
didn't make clean, the Makefile will declare that dependency as satisfied
and it'll try to use the parallel_dat_mod.mod and parallel_dat.o files from
the previous build with no MPI stuff inside.

I think that's where your error is coming from. The only thing that would
result from not passing mpif.h (which is included in many of the modules
that are used publicly) is not recognizing the mpi_bcast call for "notdone".

HTH,
Jason

   make parallel
> ==============================================
>
> The first time around (with all steps and using intel) I only got
> sander.MPI and sander.LES.MPI compiled, followed by this:
>
> ...
> make -C src/ parallel
> make[2]: Entering directory `/opt/soft/amber-11-1/src/pmemd/src'
> cpp -traditional -DMPI -P -DMKL -DBINTRAJ -DDIRFRC_EFS -DDIRFRC_COMTRANS
> -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC -DPUBFFT master_setup.fpp
> master_setup.f90
> mpif90 -ipo -O3 -no-prec-div -xHost -c master_setup.f90
> cpp -traditional -DMPI -P -DMKL -DBINTRAJ -DDIRFRC_EFS -DDIRFRC_COMTRANS
> -DDIRFRC_NOVEC -DFFTLOADBAL_2PROC -DPUBFFT pmemd.fpp pmemd.f90
> mpif90 -ipo -O3 -no-prec-div -xHost -c pmemd.f90
> pmemd.f90(92): error #6404: This name does not have a type, and must have
> an explicit type. [MYTASKID]
> call mstartup(mytaskid, numtasks)
> ----------------^
> pmemd.f90(92): error #6404: This name does not have a type, and must have
> an explicit type. [NUMTASKS]
> call mstartup(mytaskid, numtasks)
> --------------------------^
> pmemd.f90(229): error #6404: This name does not have a type, and must have
> an explicit type. [GBL_MY_ATM_LST]
> gbl_my_atm_lst)
> ---------------^
> pmemd.f90(228): error #6784: The number of actual arguments cannot be
> greater than the number of dummy arguments. [RUNMD]
> call runmd(natom, atm_crd, atm_mass, atm_frc, atm_vel, atm_last_vel, &
> ---------^
> pmemd.f90(240): error #6404: This name does not have a type, and must have
> an explicit type. [NOTDONE]
> notdone = 0
> ----^
> pmemd.f90(241): error #6404: This name does not have a type, and must have
> an explicit type. [MPI_INTEGER]
> call mpi_bcast(notdone, 1, mpi_integer, 0, mpi_comm_world, err_code_mpi)
> -------------------------------^
> pmemd.f90(241): error #6404: This name does not have a type, and must have
> an explicit type. [MPI_COMM_WORLD]
> call mpi_bcast(notdone, 1, mpi_integer, 0, mpi_comm_world, err_code_mpi)
> -----------------------------------------------^
> pmemd.f90(241): error #6404: This name does not have a type, and must have
> an explicit type. [ERR_CODE_MPI]
> call mpi_bcast(notdone, 1, mpi_integer, 0, mpi_comm_world, err_code_mpi)
> ---------------------------------------------------------------^
> compilation aborted for pmemd.f90 (code 1)
> make[2]: *** [pmemd.o] Error 1
>
> Looks like mpi.h was not passed ...
>
>
> With best regards,
> Michael
>
> _______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber
>



-- 
Jason M. Swails
Quantum Theory Project,
University of Florida
Ph.D. Candidate
352-392-4032
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Nov 10 2011 - 07:00:04 PST
Custom Search