Escali Escali, LLC Network Router 4.4 User Manual

Page of 81
Section: 2.2 SMC network devices
Scali MPI Connect Release 4.4 Users Guide 
12
Figure 2-1: illustrates how applications started with mpimon have their communication system 
established by a system of daemons on the nodes. This process uses TCP/IP communication 
over the networking Ethernet, whereas optional high performance interconnects are used for 
communication between processes. 
Parameter control is performed by mpimon to check as many of the specified options and 
parameters as possible. The user program names are checked for validity, and the nodes are 
contacted (using sockets) to ensure they are responding and that mpid is running.
Via mpid mpimon establishes contact with the nodes and transfers basic information to enable 
mpid to start the submonitor mpisubmon on each node. Each submonitor establishes a 
connection to mpimon for exchange of control information between each mpisubmon and 
mpimon to enable mpisubmon to start the specified userprograms (MPI-processes).
As mpisubmon starts all the MPI-processes to be executed they MPI_Init(). Once inside here 
the user processes wait for all the mpisubmons inovolved to coordinate via mpimon. Once all 
processes are ready mpimon will return a “start running” message to the processes. They will 
then return from MPI_Init() and start executing the user code.
Stopping MPI application programs is requested by the user processes as they enter the 
MPI_Finalize() call. The local mpisubmon will signal mpimon and wait for mpimon to return a 
“all stopped message”. This comes when all processes are waiting in MPI_Finalize(). As the user 
processes return from the MPI_Finalize() they release their resources and terminates. Then the 
local mpisubmon terminates and eventuall mpimon terinates.
2.2 SMC network devices
Figure 2-2: Scali MPI Connect relies on DAT to interface to a number of interconnects
Beginning with SSP 4.0.0 and SMC 4.0.0 the Scali MPI offers generic support for interconnects. 
This does not yet mean that every interconnect is supported out of the box, since SMC still 
requires a driver for each interconnect.  But from SMC's point of view, a driver is just a