Programming based on message passing, Computer Networking

Assignment Help:

Programming Based on Message Passing

As we know, the programming model based on message passing uses high level programming languages like C/C++ along with a number of message passing libraries like PVM and MPI. Here, given an example program of message passing.

Example 1: Addition of array elements using two processors.

In this problem, we have to search the sum of all the elements of an array A of size n. We shall separate n elements into two groups of roughly equal size. The first [n/2] elements are added by the first processor, P0, and last [n/2] elements the by second processor, P1. The two sums then are added to get the final result. The program is given below:

Program for P0

#include

#define n 100

int main(int argc, char **argv) {

int A[n];

int sum0 =0, sum1=0,sum; MPI_Init(&argc, &argv);

for( int i=0;i

scanf("%d", &A[i]);

MPI_Send( &n/2, n/2, MPI_INT,1, 0, MPI_COMM_WORLD);

for(i=1; i

sum0+=A[i];

sum1=MPI_Recv(&n/2, n/2, MPI_INT,1, 0, MPI_COMM_WORLD);

sum=sum0+sum1; printf("%d",sum); MPI_Finalize();

}

Program for P1,

int func( int B[int n])

{

MPI_Recv(&n/2, n/2, MPI_INT,0, 0, MPI_COMM_WORLD);

int sum1=0 ;

for (i=0; i

sum1+=B[i];

MPI_Send( 0, n/2, MPI_INT,0, 0, MPI_COMM_WORLD);

}


Related Discussions:- Programming based on message passing

Mechanical characteristics of RS232 interface, Q. Mechanical Characteristic...

Q. Mechanical Characteristics of RS232 interface? - 9-pin connector - 9-pin connector is more usually found in IBM-PC but it covers signals for asynchronous serial com

Define the tasks for which sns is used, Define the tasks for which SNS is u...

Define the tasks for which SNS is used SNA can be used for the following types of tasks: -  Terminal access to mainframe and midrange computer applications. -  File trans

Distributed enrollment protocol dep, Introduction: This is a specialized p...

Introduction: This is a specialized protocol designed for CS5244. It provides a distributed means to access a BasicEnrollmentManager implementation through client-server communica

What are the routing techniques, Q. What are the Routing Techniques? R...

Q. What are the Routing Techniques? Routing Routing Techniques Static versus Dynamic Routing Routing Table for classful Addressing Routing Table for Cl

Explain point-to-point protocol in ccna, An industry standard suite of prot...

An industry standard suite of protocols for the use of point-to-point links to transport multiprotocol datagrams.

What are mac addresses, What are MAC addresses? MAC, or Media Access Co...

What are MAC addresses? MAC, or Media Access Control, uniquely identifies a device on the network. It is also called as physical address or Ethernet address. A MAC address is m

What is usage of sequence number in reliable transmission, What is usage of...

What is usage of Sequence Number in Reliable Transmission? The protocol specifies that frames need to be numbered. This is done by using sequence numbers. A field is added to t

Deadlock avoidance or prevention, Deadlock Avoidance To avoid deadlock...

Deadlock Avoidance To avoid deadlocks two types of strategies are used: 1) Static prevention: It uses V and P operators and Semaphores to allocate and deallocate shared res

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd