next up previous
Next: Direct Remote Memory Access. Up: The Bayanihan BSP Methods Previous: The Bayanihan BSP Methods

Message-Passing.

The message-passing methods are similar in functionality to those found in systems such as MPI [12] or PVM [10], except that, as noted earlier, messages sent during a superstep can only be received by the recipient in the next superstep. In the present implementation, messages are queued at the recipient in arbitrary order, but can be identified by tag using the bsp_peekTag() method, or by calling the getBSPTag() method of the BSPMessage object returned by bsp_recv(). The data itself can be retrieved as an object by calling the getData() method of the BSPMessage. Any data object that implements the java.io.Serializable interface or has a HORB proxy (generated by the HORB compiler) can be passed in a message. Note that Java's object-oriented features and platform-independence make sending and receiving messages much easier than in C-based systems such as MPI or PVM, where one must explicitly decompose complex messages into its primitive components.



Luis Sarmenta
1/19/1999