For the experiments that follow, it is assumed that a computing cluster has at least two nodes and there are two symmetric multi-processors (SMPs) per node. Start up the MPD daemons by issuing a command such as:
mpdboot -n 2 -r ssh -f ~/mpd.hosts
Type the command:
mpdtrace
to verify that there are MPD daemons running on the two nodes of the cluster. The response from issuing this command should be something like:
clusternode1
clusternode2
mpiifort test.f -o testf mpiifort test.f90 -o testf90 mpiicc test.c -o testc mpiicpc test.cpp -o testcpp
Issue the mpiexec commands:
mpiexec -n 2 ./testf mpiexec -n 2 ./testf90 mpiexec -n 2 ./testc mpiexec -n 2 ./testcpp
The output from testcpp should look something like:
Hello world: rank 0 of 2 running on clusternode1
Hello world: rank 1 of 2 running on clusternode2
mpiexec -env I_MPI_FABRICS dapl -n 2 ./testf mpiexec -env I_MPI_FABRICS dapl -n 2 ./testf90 mpiexec -env I_MPI_FABRICS dapl -n 2 ./testc mpiexec -env I_MPI_FABRICS dapl -n 2 ./testcpp
The output from testf90 using the dapl device value for the I_MPI_FABRICS environment variable should look something like:
Hello world: rank 0 of 2 running on clusternode1
Hello world: rank 1 of 2 running on clusternode2