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

LAN, what is man LAN wan

what is man LAN wan

Working of TCP - buffers, Q. Working of  TCP - buffers? TCP - buffers ...

Q. Working of  TCP - buffers? TCP - buffers Sending & receiving buffers - Processes don't consume data at the same speed Sending site: - White section: unfilled

Give examples of the application layer, Pretty much any end-user program is...

Pretty much any end-user program is an best example of the Application Layer.

What is synchronous tdm, What is Synchronous TDM? In STDM, the multiple...

What is Synchronous TDM? In STDM, the multiplexer allocates exactly the same time slot to every device at all times, whether or not a device has anything to transmit.

Define the term - proxy servers, Define the term - Proxy servers These ...

Define the term - Proxy servers These types of firewalls have been further classified into two types: application level gateways and circuit level gateways. The application

Difference among flow control and error control, What is the difference am...

What is the difference among  flow control and error control?    Ans) Flow control: adjust and confirm data flow rate for successful transmission. Error Control: a method to

Explain monitor stations of token passing, Monitor Stations Lost t...

Monitor Stations Lost tokens - timer is issued each time a frame or token is generated If no frame is received in time period new token is generated by a monitor stat

Explain sonet frame transaction, Sonet Frame Transaction Transmitted ...

Sonet Frame Transaction Transmitted one subsequent to another without any gap in between. First 2 bytes - alignment bytes. F628 in Hex. - define the beginning of every

Basic working of spanning tree, Q. Basic working of Spanning Tree? Spa...

Q. Basic working of Spanning Tree? Spanning Tree - Redundant bridges may be installed to provide reliability - To prevent infinite looping of packets between bridges,

Acknowledgment number - transport layer, Acknowledgment number This 32...

Acknowledgment number This 32 bit  field  defines  the byte  number that the  from the  segment is expecting to  receive the segment is expecting to receive from the other par

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