[CPMD-list] IFC: "undefined reference"
Axel Kohlmeyer
axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Thu Feb 26 12:55:16 CET 2004
On Thu, 26 Feb 2004 17:14:56 +0530 "Dr. Balasubramanian Sundaram" wrote:
> Dear Axel,
> Thanks for your interest and helpful suggestions. My previous mail
> has to some extent, overtaken your reply. Now, I lamboot only one node.
> I run the parallel executable as,
>
> mpirun -vv -np 1 ../CPMD-3.7.2/SOURCE/cpmd.x system.in
^^^^^
are you _positive_, that you are pointing to the parallel executable?
try using an absolute path here.
a.
>
> and the output is:
> ------------------------
> mpirun: waiting for MPI_INIT from 1 processes...
> mpirun: someone died before MPI_INIT -- rank 0
> -----------------------------------------------------------------------------
> It seems that [at least] one of the processes that was started with
> mpirun did not invoke MPI_INIT before quitting (it is possible that
> more than one process did not invoke MPI_INIT -- mpirun was only
> notified of the first one, which was on node n0).
>
> mpirun can *only* be used with MPI programs (i.e., programs that
> invoke MPI_INIT and MPI_FINALIZE). You can use the "lamexec" program
> to run non-MPI programs over the lambooted nodes.
> -----------------------------------------------------------------------------
> mpirun: receiving 0 useless MPI_INIT/MPI_FINALIZE messages...
> ----------------------------------------
>
> So, in this case I am not even trying to use node2. Incidentally, my
> cluster
> is a diskless one, and every filesystem is exported from the master to
> the
> nodes, and the nodes "see" them in a seamless fashion. Hence, this seems
> not
> to be due to differing versions/paths.
>
> My Makefile is:
> FFLAGS = -c -r8 -w90 -w95 -O3 -pc64 -axM -ip -tpp7
> LFLAGS = \
> -L/opt/intel/mkl61/lib/32 -lmkl_lapack \
> -lmkl_ia32 -lguide \
> -static-libcxa -Xlinker -Bstatic -lsvml \
> -Vaxlib -Xlinker -Bdynamic -static
>
> CFLAGS = -c -O2 -Wall
> CPP = /lib/cpp -P -C -traditional
> CPPFLAGS = -D__Linux -D__PGI -DLAPACK -DFFT_DEFAULT \
> -DMP_LIBRARY=__MPI -DMYRINET -DLINUX_IFC
> NOOPT_FLAG =
> CC = mpicc
> FC = mpif77
> LD = mpif77
> --------------------------------------------------
>
> Here are some more details of my "env" output:
>
> LD_LIBRARY_PATH=/usr/local/intel_fc_80/lib:/opt/intel/mkl61/lib/32
> PP_LIBRARY_PATH=/home/bala/cpmd/CPMD-3.7.2/PPLIBNEW
>
> Thanks again,
>
> Regards,
> Bala
>
>
>
> Axel Kohlmeyer wrote:
> >
> > On Thu, 26 Feb 2004, Dr. Balasubramanian Sundaram wrote:
> >
> > [...]
> >
> > BS> LFLAGS, I get an undefined reference for s_copy. The following is the
> > BS> error message.
> > BS> ====================
> > BS> /opt/intel/mkl60/lib/32/libmkl_lapack.a(ilaenv.o)(.text+0x52a): In
> > BS> function `__MKL_SERV_ilaenv':
> > BS> : undefined reference to `s_copy'
> >
> > ok, so the intel people either seem to compile parts of their lapack
> > libraries with g77 or use the f2c runtime (conventions). ;-).
> > should be rather easy for them to include a stripped down run-time
> > in their library.
> >
> > BS> ===================
> > BS>
> > BS> Strangely, cpmd.x give a runtime error. I have lambooted 2 nodes
> > BS> properly, and actually tried to run a job only on one node. This job
> > BS> runs fine for a serial cpmd executable that was compiled with IFC and
> > BS> MKL.
> > BS> So, the input file seems to be fine.
> > BS> I get the following runtime error.
> > BS> -----------------------------
> > BS> PROGRAM CPMD STARTED AT: Thu Feb 26 12:31:44 2004
> > BS> forrtl: severe (174): SIGSEGV, segmentation fault occurred
> > BS> Image PC Routine Line
> > BS> Source
> > BS> cpmd.x 08677134 Unknown Unknown Unknown
> > BS> cpmd.x 08243965 Unknown Unknown Unknown
> > BS> cpmd.x 00000000 Unknown Unknown Unknown
> > BS> -----------------------------------------------------------------------------
> > BS> It seems that [at least] one of the processes that was started with
> > BS> mpirun did not invoke MPI_INIT before quitting (it is possible that
> > BS> more than one process did not invoke MPI_INIT -- mpirun was only
> > BS> notified of the first one, which was on node n0).
> > BS>
> > BS> mpirun can *only* be used with MPI programs (i.e., programs that
> > BS> invoke MPI_INIT and MPI_FINALIZE). You can use the "lamexec" program
> > BS> to run non-MPI programs over the lambooted nodes.
> > BS> -----------------------------------------------------------------------------
> > BS>
> >
> > there are two likely causes: you have not installed the same version of
> > LAM on all nodes that you are using, or the network does not work
> > properly.
> >
> > so please try running the parallel executable only with one node,
> > and - if that works - lamboot only one node, but run two copies and
> > if that works too, please carefully whether the new lam on the additional
> > nodes is really in the search path and of the same version.
> >
> > hope this helps,
> > axel kohlmeyer.
> >
> > BS> Thanks again for your considerable help,
> > BS>
> > BS> Best Regards,
> > BS> Bala
> > BS>
> > BS>
> > BS>
> > BS>
> > BS>
> > BS>
> > BS>
> > BS> Axel Kohlmeyer wrote:
> > BS> >
> > BS> > On Wed, 25 Feb 2004, Dr. Balasubramanian Sundaram wrote:
> > BS> >
> > BS> > BS> Dear All,
> > BS> > BS>
> > BS> > BS> I have been having this trivial, yet nagging problem, and thought
> > BS> > BS> I should seek help to preserve my sanity!
> > BS> > BS>
> > BS> > BS> Details: CPMD 3.7.2, IFORT (IFC's new name): version 8.0,
> > BS> > BS> P4 at 3.0 GHz (with HT), Mandrake Linux 9.2 (kernel 2.4.22), with
> > BS> > BS> Intel's MKL version 6.0, gcc, lam-mpi version 7.0.4
> > BS> > BS>
> > BS> > BS> I compiled lam-mpi using ifort compiler, using "FFLAGS=-us" option
> > BS> > BS> (i.e., equivalent of "-assume underscore"). lam-mpi compiled fine,
> > BS> > BS> and I could compile and run their examples/pi/fpi code properly
> > BS> > BS> on two nodes.
> > BS> >
> > BS> > dear bala,
> > BS> >
> > BS> > stupid question: why are you messing with the underscoring, when
> > BS> > you are compiling cpmd _and_ lam with the intel compiler anyway?
> > BS> >
> > BS> > BS>
> > BS> > BS> I have problems at the link stage for CPMD. I provide at the end of thi
s
> > BS> > BS> mail, my Makefile. Here, I give the output of the command,
> > BS> > BS>
> > BS> > BS> /home/bala/lam-7.0.4/tools/wrappers/mpif77 -showme
> > BS> > BS>
> > BS> > BS> OUTPUT:
> > BS> > BS> ifort -I/usr/include -llammpio -llamf77mpi -lmpi -llam -lutil
> > BS> >
> > BS> > hmm. you seem to be running lam from the compilation directory.
> > BS> > most likely you are not picking up the new libraries, but
> > BS> > an old set, that is installed in the default library search
> > BS> > path. if my assertion is correct, than you would have to run
> > BS> > 'make install' first. alternatively, you may be able to get
> > BS> > away with telling the linker via -L/home/bala/lam-7.0.4/and/so/on...
> > BS> > where to pick up the new libraries. but then again, you will
> > BS> > run into trouble when you start the lam daemons, since lamboot
> > BS> > will not find the matching executables.
> > BS> >
> > BS> > BS>
> > BS> > BS> All CPMD routines compile fine, but at the linker stage, I get the
> > BS> > BS> error message,
> > BS> > BS> =================
> > BS> > BS> my_para.o(.text+0x6): In function `my_start_':
> > BS> > BS> : undefined reference to `mpi_init_'
> > BS> > BS> my_para.o(.text+0xbe5): In function `my_end_':
> > BS> > BS> : undefined reference to `mpi_finalize_'
> > BS> > BS> =================
> > BS> > BS>
> > BS> > BS> I appreciate your help,
> > BS> > BS>
> > BS> > BS> Thanks,
> > BS> > BS>
> > BS> > BS> Regards,
> > BS> > BS> Bala
> > BS> > BS> -------------------------MAKEFILE HEADER--------------------------
> > BS> > BS>
> > BS> > BS> FFLAGS = -c -r8 -w90 -w95 -O3 -pc64 -axM -ip -tpp7 -us
> > BS> > BS>
> > BS> > BS> LFLAGS = \
> > BS> > BS> -L/opt/intel/mkl60/lib/32 -lmkl_lapack \
> > BS> > BS> -lmkl_ia32 -lmkl_p4 -lguide \
> > BS> > BS> -static-libcxa -Xlinker -Bstatic -lsvml \
> > BS> > BS> /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.1/libg2c.a \
> > BS> > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > BS> >
> > BS> > you should not need this. this is the g77 runtime. in fact it
> > BS> > may collide with the intel fortran runtime.
> > BS> >
> > BS> > hope this helps,
> > BS> > axel kohlmeyer.
> > BS> >
> > BS> > BS> -Vaxlib -Xlinker -Bdynamic
> > BS> > BS> CFLAGS = -c -O2 -Wall
> > BS> > BS> CPP = /lib/cpp -P -C -traditional
> > BS> > BS>
> > BS> > BS> CPPFLAGS = -D__Linux -D__PGI -DLAPACK -DFFT_DEFAULT \
> > BS> > BS> -DMP_LIBRARY=__MPI -DMYRINET -DLINUX_IFC
> > BS> > BS> NOOPT_FLAG =
> > BS> > BS>
> > BS> > BS> CC = /home/bala/lam-7.0.4/tools/wrappers/mpicc
> > BS> > BS> FC = /home/bala/lam-7.0.4/tools/wrappers/mpif77
> > BS> > BS> LD = /home/bala/lam-7.0.4/tools/wrappers/mpif77
> > BS> > BS> ---------------------------------------------------------------------
> > BS> > BS> _______________________________________________
> > BS> > BS> CPMD-list mailing list
> > BS> > BS> CPMD-list at cpmd.org
> > BS> > BS> http://www.cpmd.org/mailman/listinfo/cpmd-list
> > BS> > BS>
> > BS> > BS>
> > BS> >
> > BS> > --
> > BS> >
> > BS> > =======================================================================
> > BS> > Dr. Axel Kohlmeyer e-mail: axel.kohlmeyer at rub.de
> > BS> > Lehrstuhl fuer Theoretische Chemie Phone: ++49 (0)234/32-26673
> > BS> > Ruhr-Universitaet Bochum - NC 03/53 Fax: ++49 (0)234/32-14045
> > BS> > D-44780 Bochum http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/
> > BS> > =======================================================================
> > BS>
> > BS>
> >
> > --
> >
> > =======================================================================
> > Dr. Axel Kohlmeyer e-mail: axel.kohlmeyer at rub.de
> > Lehrstuhl fuer Theoretische Chemie Phone: ++49 (0)234/32-26673
> > Ruhr-Universitaet Bochum - NC 03/53 Fax: ++49 (0)234/32-14045
> > D-44780 Bochum http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/
> > =======================================================================
>
--
=======================================================================
Axel Kohlmeyer e-mail: axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Lehrstuhl fuer Theoretische Chemie Phone: ++49 (0)234/32-26673
Ruhr-Universitaet Bochum - NC 03/53 Fax: ++49 (0)234/32-14045
D-44780 Bochum http://www.theochem.ruhr-uni-bochum.de
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.
More information about the CPMD-list
mailing list