Answered You can hire a professional tutor to get the answer.

QUESTION

Complete 5 page APA formatted essay: Distributed Systems assessment.Because the number of processes in an MPI computation is normally fixed, processes can use point-to-point communication operations t

Complete 5 page APA formatted essay: Distributed Systems assessment.

Because the number of processes in an MPI computation is normally fixed, processes can use point-to-point communication operations to send a message from one named process to another. These operations can be used to implement local and unstructured communications. A group of processes can call collective communication operations to perform commonly used global operations such as summation and broadcast. The most important feature of MPI model from a software engineering viewpoint is its support for modular programming. A mechanism called a communicator allows the MPI programmer to define modules that encapsulate internal communication structures. These modules can be combined by both sequential and parallel composition.

Algorithms that create just one task per processor can be implemented directly, with point-to-point or collective communication routines used to meet communication requirements. Algorithms that create tasks in a dynamic fashion or that rely on the concurrent execution of several tasks on a processor must be further refined to permit an MPI implementation. For example, consider the branch-and-bound search algorithm, which creates a tree of ''search'' tasks dynamically. This algorithm cannot be implemented directly in MPI. however, it can be refined to obtain an algorithm that creates a fixed set of worker processes that exchange messages representing tree nodes to be searched. The resulting SPMD algorithm can be implemented as an MPI program. Algorithms that are not easily modified in this way are better implemented using alternative technologies, namely, Remote Procedure Call or Remote Object Invocation.

Remote Procedure Call:

As the name refers, Remote Procedure Call (RPC) is a mechanism by which, a subroutine or procedure stored at remote location can be executed. It is very useful in distributed computing as the procedure can be executed virtually at any location. The user of the may call a procedure lying on a remote computer without having to the under layer network technologies and details. It is a client / server protocol, where the requesting program is known as client and the service-providing program is known as server.

In the remote procedure call model, one thread of control logically winds through two processes: the caller's process, and a server's process. These two processes may be executed on virtually any processors, connected through any communication medium. The caller process first sends a call message to the server process and waits for a reply message. The call message includes the procedure's parameters, and the reply message includes the procedure's results. Once the reply message is received, the results of the procedure are extracted, and caller's execution is resumed. It can now use the result of the remote procedure recently executed.

On the server side, a process is dormant awaiting the arrival of a call message. When one arrives, the server process extracts the procedure's parameters, computes the results, sends a reply message, and then waits for the next call message.

In the example model, detailed above, only one of the two processes is active at any given time. But

Show more
LEARN MORE EFFECTIVELY AND GET BETTER GRADES!
Ask a Question