papers for Thursday

John-Paul Fryckman (fryckman@SDSC.EDU)
Thu, 18 May 2000 08:20:36 -0700 (PDT)

Lightweight Remote Procedure Call

This paper talks about how RPCs can be designed and optimized
for communication on one machine. It fused a capability based
system with RPC's programming structure and large grain protection.
They make an observation that most communication is between domains
rather than machines and the paper is structured around this.

The performance of LRPC is made through simple control and data
transfers that minimize copying, optimized stub generation, and
concurrent design. LRPC's execution model is adapted from protected
procedure calls. Calling is performed via a kernel trap that patches
through the call to the server domain. The copy operations are
minimal compared to a message based RPC. LRPC copies from the client
stack to the argument structure and proceeds from there, where as the
latter involves copying from domain to domain to domain and then finally
into a stream that leads to its execution.

They also show that LRPC perform better than RPC and scales on a
multiprocessor platform. The reader of this paper is left with
a board overview of LRPC and a list of reasons why and how LRPCs
perform better.

Active Messages

The goals of active messages are the minimization of communication
overhead, communication/computation overlap, and a cost/performance
ratio that makes it worth the while. Active messages are so named
because the control information within the messages are executed
on arrival rather than sitting around in some queue. When such a
message is initiated, it is place directly on the networking
infrastructure as to remove the need for copying. Furthermore, once a message
is initiated the node can immediately go back and continue computation.
They also go one step beyond and discusses the interaction between
active messages and the scheduling process. When compiling the code
based on TAM (a find-grain parallel model), it generates multiple
threads of execution and a vector that contains all of the ready
threads as to aide in the overlapping of communication and computation.
They also discuss hardware and hardware implementations of active
messages. Overall, the reader learns a great deal of information
from this paper.