next up previous
Next: Reliability Without Context Up: No Title Previous: Network

Startup Phase

This section reports our experience with implementing the MPI startup phase (MPI_Init()) under U-Net on Fast Ethernet. We encountered and overcame several difficulties which we feel are worthwhile mentioning.

Setting up a U-Net channel to a remote host requires knowledge of

  1. the local U-Net port
  2. the remote host's MAC address
  3. the remote host's U-Net port
While the remote host's MAC address is a static parameters, and could be read from a configuration file at startup time, the U-Net port numbers are not known beforehand. Since port numbers are globally shared between all processes on a host, one cannot rely on a certain port number to be available. For this reason, we gif had to add a port reservation function to the U-Net device. This allowed the following startup mechanism.

One could also design a faster startup procedure, where the slaves set up U-Net channels with the master in a star topology early on, and then use the U-Net channels to communicate the port numbers. We decided to use TCP because first the startup phase is not performance critical, and second we avoid dealing with reliability issues.



next up previous
Next: Reliability Without Context Up: No Title Previous: Network



Bernd Pfrommer
Mon May 26 12:18:25 PDT 1997