Your steps are generally correct, but I cannot speak for whether your 
/home/wude/.bashrc file is executed for both non-interactive and interactive 
logins.  If /home/wude is your $HOME, it probably is, but I don't know about 
your specific system.

Also, you should be aware that MPI applications built with Open MPI v1.6.x will 
not be ABI compatible with Open MPI v4.1.x.  Specifically: you will need to 
re-compile / re-build your "mpispeed" application with Open MPI v4.1.x.

If you are using the MPI C++ bindings in your application:

  1.  I suggest you migrate away from them, because the MPI Forum (i.e., the 
standards body that governs the MPI API) removed the C++ bindings in version 
3.0 of the MPI specification in 2012 -- over a decade ago.
  2.  That being said, the C++ bindings are still available in Open MPI v4.1.x 
-- they're just not built and installed by default (frankly, to discourage 
their use).  You can enable the C++ bindings in Open MPI 4.1.x with by adding 
--enable-mpi-cxx to the ./configure command that you use to build Open MPI.  
You will need to have a C++ compiler present to build and install the C++ 
bindings.

Also note that in Open MPI, the C++ bindings library is named "libmpi_cxx.so", 
not "libmpicxx.so" (I checked both Open MPI v1.6.5 and 4.1.5).  If your MPI 
executable is dependant upon a file named "libmpicxx.so", then, as Gilles 
mentioned earlier in this thread, you might accidentally be mixing the 
libraries between two different implmenetations of MPI (e.g., Open MPI and 
MPICH are two entirely different implementations of the same MPI API.  They are 
written and maintained by different sets of people, and are not binary 
compatible with each other).

If you'e just starting out in MPI, I'd strongly suggest ensuring that your 
system has exactly 1 implementation of MPI installed (e.g., Open MPI v4.1.5).  
Ensure that no other versions of Open MPI or MPICH -- or any other MPI 
implementation -- are installed.  That way, you can avoid confusing issues with 
libraries that are similar-but-different, ... etc.


________________________________
From: users <users-boun...@lists.open-mpi.org> on behalf of 深空探测 via users 
<users@lists.open-mpi.org>
Sent: Sunday, June 11, 2023 11:28 AM
To: Open MPI Users <users@lists.open-mpi.org>
Cc: 深空探测 <wude7826...@gmail.com>
Subject: Re: [OMPI users] Issue with Running MPI Job on CentOS 7

Subject: Open MPI Installation Issues

Hello,

Despite following your previous suggestions, I am still encountering some 
problems. Below, I have outlined the specific challenges I am facing:

1. Installation with Updated Open MPI Version:
I attempted to install the latest version of Open MPI (v4.1.5) using the 
following steps:
- Downloaded the package from 
https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.5.tar.gz.
- Executed the installation commands:
  ./configure --prefix=/usr/local/openmpi
  make
  sudo make install
- Added the environment variables to the "/home/wude/.bashrc" file:
  export PATH=/usr/local/openmpi/bin:$PATH
  export LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH
- Ran the command: source /home/wude/.bashrc

Could you please verify if these installation steps are correct?

2. Missing "libmpicxx.so.12" file after Open MPI 1.6.5 installation:
After reinstalling Open MPI 1.6.5, I noticed the existence of the "mpirun" 
executable file in the "/usr/local/openmpi/bin" directory, as well as the 
"libmpi.so" file in the "/usr/lib" directory. However, when I executed the 
command "mpirun -n 2 -H wude,wude mpispeed 1000 10s 1", an error occurred: 
"mpispeed: error while loading shared libraries: libmpicxx.so.12: cannot open 
shared object file: No such file or directory". It seems that the 
"libmpicxx.so.12" file was not generated during the installation process. Could 
you please help me identify the cause of this issue?

3. Missing "libmpixcc.so.12" file in CentOS 7 default Open MPI installation:
In case I install the Open MPI version provided by CentOS 7 using the command 
"sudo yum install openmpi-devel.x86_64", I encountered a similar problem. Even 
after installation, I cannot find the "libmpixcc.so.12" file. It appears that 
the "/usr/lib64/openmpi/lib" directory does not contain any files related to 
"libmpixcc". Could you kindly advise on this matter?

I greatly appreciate your time and assistance in resolving these issues. Thank 
you in advance for your support.

Best regards,
De Wu

Zhéxué M. Krawutschke via users 
<users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>> 于2023年6月1日周四 
20:32写道:

Hello together,

regardless that CentOS 7.X already has EOL status,
I would recommend, for example, that you always build/compile OpenMPI and the 
other tools yourself
compile OpenMPI and the other tools to one's needs.

It is true that it is more effort, but in the end it pays off, because the
distributions are sometimes very behind.

I have already thought about providing something like this, how to do it or how 
to make the whole process available in an automated way, so to speak.


If someone would like to help me develop this, I would be very happy.
Kind regards from Berlin....

Z. Matthias

--
Sent from Canary<https://canarymail.io>

On Donnerstag, Juni 01, 2023 at 10:11 AM, Tru Huynh via users 
<users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>> wrote:
Hello,

A few comments below:

On Thu, Jun 01, 2023 at 09:09:32AM +0800, 深空探测 via users wrote:
<...>

To provide some context, I have successfully installed Open MPI version
1.6.5 on my CentOS 7 system. However, when I attempted to run the command
"mpirun -n 2 -H wude,wude mpispeed 1000 10s 1", where "wude" is my
hostname, I encountered unexpected results. Instead of running with two
processes as intended, it appears that only one process was executed. The
output I received is as follows:
...
1) Why not using one of the openmpi versions provided by CentOS-7?
$ yum list openmpi\*
<...>
Available Packages
openmpi.i686 1.10.7-5.el7 base
openmpi-devel.i686 1.10.7-5.el7 base
openmpi.x86_64 1.10.7-5.el7 base
openmpi-devel.x86_64 1.10.7-5.el7 base
openmpi3.i686 3.1.3-2.el7 base
openmpi3.x86_64 3.1.3-2.el7 base
openmpi3-devel.i686 3.1.3-2.el7 base
openmpi3-devel.x86_64 3.1.3-2.el7 base

You have the choice of 1.x series or 3.1.y series..
+ environment setup are pre-filled for environment-modules.

2) maybe you have one of them installed and conflicting
with your self built openmpi 1.6.5 version?

3) CentOS-7 is nearing end-of-life

Good luck.

Tru

--
Tru Huynh (PhD) | mailto:t...@pasteur.fr<mailto:t...@pasteur.fr> | tel +33 1 45 
68 87 37
https://research.pasteur.fr/en/team/structural-bioinformatics/
Institut Pasteur, 25-28 rue du Docteur Roux, 75724 Paris CEDEX 15 France

Reply via email to