As the MPC multicomputer is a distributed memory architecture, the use of a message passing library is mandatory to ease the development of user applications. In a first moment our choice was PVM because of the wide acceptance it gained and the fact that it become a de facto standard for message-passing programming. So a PVM implementation in the MPC parallel computer is provided.
The implementation is based on the 3.3 version and is optimized for the MPC architecture. One special node is chosen to run the PVM daemon. It is called service node. The other nodes are used for number crunching (compute nodes). This schema follows PVM implementations in several other parallel machines. The PVM Daemon is essentially responsible for load balancing, task creation and management, and serves as the gateway to the outside world. The use of only one daemon allows external workstations to recognize the MPC parallel computer as a unique, high performance machine.
In this implementation, a task can be started on the service node as a Unix process and enrolls in PVM by establishing a Unix socket connection to the daemon. The only way to start PVM tasks on the compute nodes via a pvm_spawn() through the task started in the service node. When the daemon receives a request to spawn new tasks, it allocates a set of nodes, and load the executable in the specified number of nodes. The library to be linked with the task that will run on the service node is the standard PVM library; for compute nodes there is another library that implements message passing functions in terms of SLR/V system calls. This means that all communication between the daemon and compute node tasks and between compute nodes tasks themselves are made through the high performance HSL network.
You can find more general informations about PVM on http://www.epm.ornl.gov/pvm. The documentation about the PVM port to MPC (in french) is available here.
Server design A. Fenyö
email@example.com - contact people
About this Web Site
$Date: 1998/03/02 23:26:20 $
Copyright © 1997-1998 UPMC/LIP6
All rights reserved