libflow2d3d.so: undefined symbol: mpi_initialized_ - D-Flow Flexible Mesh - Delft3D
intro story D-Flow FM
D-Flow Flexible MeshD-Flow Flexible Mesh (D-Flow FM) is the new software engine for hydrodynamical simulations on unstructured grids in 1D-2D-3D. Together with the familiar curvilinear meshes from Delft3D 4, the unstructured grid can consist of triangles, pentagons (etc.) and 1D channel networks, all in one single mesh. It combines proven technology from the hydrodynamic engines of Delft3D 4 and SOBEK 2 and adds flexible administration, resulting in:
An overview of the current developments can be found here. The D-Flow FM - team would be delighted if you would participate in discussions on the generation of meshes, the specification of boundary conditions, the running of computations, and all kinds of other relevant topics. Feel free to share your smart questions and/or brilliant solutions!
======================================================= | Sub groups
|
Message Boards
libflow2d3d.so: undefined symbol: mpi_initialized_
SR
sergio rosales, modified 8 Years ago.
libflow2d3d.so: undefined symbol: mpi_initialized_
Youngling Posts: 1 Join Date: 12/2/11 Recent Posts 00
Hi
When run the example 01 in serial mode don't have problem,, but in paralell mode I obtained the next message
./run_flow2d3d_parallel.sh
Contents of machinefile:
MAPOCHO:12
----------------------------------------------------------------------
Executing "/home/nazca/Delft3d/bin/lnx/flow2d3d/bin/d_hydro.exe TMP_config_flow2d3d_4164.xml" ...
ERROR: /home/nazca/Delft3d/bin/lnx/flow2d3d/bin/d_hydro.exe: symbol lookup error: ../../bin/lnx/flow2d3d/bin/libflow2d3d.so: undefined symbol: mpi_initialized_
- Starting "d_hydro.exe" may give more information:
- Run "deltares_hydro.exe <INI-inputfile> -keepXML".
- Run "d_hydro.exe TMP_config_flow2d3d_<processId>.xml".
./d_hydro.exe ~/Delft3d/examples/01_standard/TMP_config_flow2d3d_4164.xml
d_hydro ABORT: Cannot load component library "libflow2d3d.so": libflow2d3d.so: cannot open shared object file: No such file or directory
The compiler is Intel Parallel Studio XE 2013.1.117, both Delft and mpi are compile with Intel.
It is the only model wich don't work using mpi, the other works fine, I don't why Delft have this error?
Best Regards
When run the example 01 in serial mode don't have problem,, but in paralell mode I obtained the next message
./run_flow2d3d_parallel.sh
Contents of machinefile:
MAPOCHO:12
----------------------------------------------------------------------
Executing "/home/nazca/Delft3d/bin/lnx/flow2d3d/bin/d_hydro.exe TMP_config_flow2d3d_4164.xml" ...
ERROR: /home/nazca/Delft3d/bin/lnx/flow2d3d/bin/d_hydro.exe: symbol lookup error: ../../bin/lnx/flow2d3d/bin/libflow2d3d.so: undefined symbol: mpi_initialized_
- Starting "d_hydro.exe" may give more information:
- Run "deltares_hydro.exe <INI-inputfile> -keepXML".
- Run "d_hydro.exe TMP_config_flow2d3d_<processId>.xml".
./d_hydro.exe ~/Delft3d/examples/01_standard/TMP_config_flow2d3d_4164.xml
d_hydro ABORT: Cannot load component library "libflow2d3d.so": libflow2d3d.so: cannot open shared object file: No such file or directory
The compiler is Intel Parallel Studio XE 2013.1.117, both Delft and mpi are compile with Intel.
It is the only model wich don't work using mpi, the other works fine, I don't why Delft have this error?
Best Regards
Adri Mourits, modified 8 Years ago.
RE: libflow2d3d.so: undefined symbol: mpi_initialized_
Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts 00
Hi Sergio,
Most commonly, Delft3D is compiled/linked without mpi, although you think it does. The best way to check is to have a look in "src/logs/make.log" and search for mpich. When linking (in directory "src/engines_gpl/flow2d3d/packages/flow2d3d/src") some phrase like "-L/opt/mpich2-1.0.8-intel64-PIC/lib -lfmpich -lmpich" should appear.
Please double check that the compiler used for Delft3D is the same as used for mpich. Especially when there are different "tastes" of mpich available on your system, this may cause problems.
The script "run_flow2d3d_parallel.sh" contains the line:
export PATH="/opt/mpich2/bin:${PATH}"
You have to adapt this for your system.
Hope this helps.
Regards,
Adri
Most commonly, Delft3D is compiled/linked without mpi, although you think it does. The best way to check is to have a look in "src/logs/make.log" and search for mpich. When linking (in directory "src/engines_gpl/flow2d3d/packages/flow2d3d/src") some phrase like "-L/opt/mpich2-1.0.8-intel64-PIC/lib -lfmpich -lmpich" should appear.
Please double check that the compiler used for Delft3D is the same as used for mpich. Especially when there are different "tastes" of mpich available on your system, this may cause problems.
The script "run_flow2d3d_parallel.sh" contains the line:
export PATH="/opt/mpich2/bin:${PATH}"
You have to adapt this for your system.
Hope this helps.
Regards,
Adri
LS
LUIS HENRIQUE SILVA, modified 7 Years ago.
libflow2d3d.so: undefined symbol: mpi_initialized_
Youngling Posts: 12 Join Date: 9/30/11 Recent Posts 00
Dear Adri,
I'm trying to compile and run Delft3D on 64bit RedHat Enterprise Linux 6 in two ways:
1) IFORT V11.1
2) PGI 7.0-7
*** Our MPI is version 2-1.0.7 compiled with pgf90 (Portland).
The compilation and serial runs of examples (01-04) were successful in two ways.
I got the following errors when did the parallel run of example 01.
In both versions on the following error:
---------------------------------------------------------------------
Executing "/home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/d_hydro.exe TMP_config_flow2d3d_656.xml" ...
ERROR: /home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/d_hydro.exe: symbol lookup error: /home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/libflow2d3d.so: undefined symbol: mpi_initialized_
- Starting "d_hydro.exe" may give more information:
- Run "deltares_hydro.exe <INI-inputfile> -keepXML".
- Run "d_hydro.exe TMP_config_flow2d3d_<processId>.xml".
/home/philipp.edson/Software/mpich2-1.0.7/bin/mpdlib.py:8: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module.
import sys, os, signal, popen2, socket, select, inspect
/home/philipp.edson/Software/mpich2-1.0.7/bin/mpdlib.py:15: DeprecationWarning: the md5 module is deprecated; use hashlib instead
from md5 import new as md5new
---------------------------------------------------------------------
What is the problem?
*** There is a step-by-step instructions to compile Delft3D with PGI (Portland)? Not found in the forum!
Thanks
Luis Marton
I'm trying to compile and run Delft3D on 64bit RedHat Enterprise Linux 6 in two ways:
1) IFORT V11.1
2) PGI 7.0-7
*** Our MPI is version 2-1.0.7 compiled with pgf90 (Portland).
The compilation and serial runs of examples (01-04) were successful in two ways.
I got the following errors when did the parallel run of example 01.
In both versions on the following error:
---------------------------------------------------------------------
Executing "/home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/d_hydro.exe TMP_config_flow2d3d_656.xml" ...
ERROR: /home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/d_hydro.exe: symbol lookup error: /home/luis/delft3d/d-install_pgi/5.01.00.2163/d-compilado/bin/libflow2d3d.so: undefined symbol: mpi_initialized_
- Starting "d_hydro.exe" may give more information:
- Run "deltares_hydro.exe <INI-inputfile> -keepXML".
- Run "d_hydro.exe TMP_config_flow2d3d_<processId>.xml".
/home/philipp.edson/Software/mpich2-1.0.7/bin/mpdlib.py:8: DeprecationWarning: The popen2 module is deprecated. Use the subprocess module.
import sys, os, signal, popen2, socket, select, inspect
/home/philipp.edson/Software/mpich2-1.0.7/bin/mpdlib.py:15: DeprecationWarning: the md5 module is deprecated; use hashlib instead
from md5 import new as md5new
---------------------------------------------------------------------
What is the problem?
*** There is a step-by-step instructions to compile Delft3D with PGI (Portland)? Not found in the forum!
Thanks
Luis Marton
Adri Mourits, modified 7 Years ago.
RE: libflow2d3d.so: undefined symbol: mpi_initialized_ (Answer)
Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts 00
Hi Luis Marton,
From the FAQ:
Regards,
Adri
From the FAQ:
- mpich2 must be compiled with exactly the same compiler as used for the Delft3D source code. So if you are forced to use an mpich2 version compiled with Portland, you must compile the Delft3D source code with Portland too.
- Check the link step in the make log on mpich stuff being used. Are the correct libraries used?
Regards,
Adri
LS
LUIS HENRIQUE SILVA, modified 7 Years ago.
RE: libflow2d3d.so: undefined symbol: mpi_initialized_
Youngling Posts: 12 Join Date: 9/30/11 Recent Posts 00
Adri Mourits:
Hi Luis Marton,
From the FAQ:
Regards,
Adri
From the FAQ:
- mpich2 must be compiled with exactly the same compiler as used for the Delft3D source code. So if you are forced to use an mpich2 version compiled with Portland, you must compile the Delft3D source code with Portland too.
- Check the link step in the make log on mpich stuff being used. Are the correct libraries used?
Regards,
Adri
Dear Adri,
Delft3D successfully compiled with MPICH2, however I'm not managing to run parallel an experiment in Z-model.
What is the procedure?
thank you
Luis Marton
Adri Mourits, modified 7 Years ago.
RE: libflow2d3d.so: undefined symbol: mpi_initialized_ (Answer)
Yoda Posts: 1221 Join Date: 1/3/11 Recent Posts 00
Hi Luis,
The combination Z-model and parallel is currently under construction.
You have two options:
Regards,
Adri
The combination Z-model and parallel is currently under construction.
You have two options:
- Use branch "https://svn.oss.deltares.nl/repos/delft3d/branches/research/Deltares/20130801_16494_z-model_parallel_from_tag_2703", but there is no guarantee that it will work.
- Use DomainDecomposition to split your model into subdomains being calculated in parallel.
Regards,
Adri