Intel MPI
Scenarios
This section describes how to run Intel MPI (version l_mpi_2018.0.128) in an ECS cluster (take CentOS 7.3 as an example).
Prerequisites
- An ECS equipped with InfiniBand NICs has been created, and an EIP has been bound to it.
- Multiple ECSs have been created using a private image.
Procedure
- Disable the firewall.
- Log in to an ECS in the cluster.
- Run the following command to disable the ECS firewall:
# systemctl stop firewalld.service
- Run the following command to check whether the firewall has been disabled:
# systemctl status firewalld.service
Figure 1 Disabling a firewall
- Log in to all other ECSs in the cluster and repeat steps 1.a to 1.c to disable firewalls on all ECSs.
- Modify the configuration file.
- Log in to an ECS in the cluster.
- Run the following command to view the ECS hostname:
# hostname
Figure 2 Querying the ECS hostname
- Log in to all other ECSs in the cluster and repeat steps 2.a to 2.b to obtain hostnames of all ECSs.
- Log in to an ECS in the cluster.
- Run the following command to add the hosts configuration file:
# vi /etc/hosts
Add the private IP addresses and hostnames of all ECSs in the cluster. For example, run the following commands:
192.168.0.1 host-192-168-0-1
192.168.0.2 host-192-168-0-2
...
- Run the following command to add the hostfile file:
# vi hostfile
Add hostnames of all ECSs in the cluster. For example, run the following commands:
host-192-168-0-1
host-192-168-0-2
...
- Log in to other ECSs in the cluster and repeat steps 2.d to 2.f.
- Configure the IP addresses of InfiniBand NICs.
- Run the following commands on all ECSs in the cluster to configure IP addresses for IB drivers:
# ifconfig ib0 192.168.23.34/24
# ifconfig ib0 192.168.23.35/24
...
You can specify the IP addresses randomly, but ensure that they are in the same network segment.
- Run the following command on an ECS to check network connectivity:
# ping 192.168.23.35
- Run the following commands on all ECSs in the cluster to configure IP addresses for IB drivers:
- Run the following command to run Intel MPI on the ECS cluster:
For example, there are two ECSs in the cluster. Then, run the following command:
# mpirun -perhost 2 -machinefile hostfile -np 12 /root/intel_hello
Specify the path of hostfile when running it. The path of the executable file hello must be absolute. All executable files in the cluster must be in the same directory.
Figure 3 Running Intel MPI on the ECS cluster
Last Article: Spectrum MPI
Next Article: Platform MPI
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.