Addition of array elements using two processors, Computer Engineering

Assignment Help:

Q. Addition of array elements using two processors?

In this example we have to find sum of all elements of an array A of size n. We will divide n elements in 2 groups of roughly equivalent size. The first [n/2] elements are added by first processor P0 and last [n/2] elements by 2nd processor P1.  The two sums then are added to obtain 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:- Addition of array elements using two processors

Relation ship, what is relationship among objects in software engineering??...

what is relationship among objects in software engineering??

Name a different return types of a controller action method, The following...

The following are just a few return types of a controller action process. In common an action process can return an instance of an any class that derives from Action Result class.

Boiler troubles, Differences between internal and external treatment in boi...

Differences between internal and external treatment in boiler

What is python?, Python is an interpreter, interactive, object-oriented pro...

Python is an interpreter, interactive, object-oriented programming language. It is frequently compared to Tcl, P e r l, Scheme or Java. Python combines remarkable power with v

Define rom, Define ROM? It is a non-volatile memory. It includes only r...

Define ROM? It is a non-volatile memory. It includes only reading of stored data.

Explain session layer of osi model, Explain Session Layer of OSI Model. ...

Explain Session Layer of OSI Model. The session layer manages, establishes and terminates communication sessions. Communication sessions contain service of requests and serv

Qwerty - keyboard layout, Q. QWERTY - Keyboard Layout ? A keyboard layo...

Q. QWERTY - Keyboard Layout ? A keyboard layout is arrangement of keys across the keyboard. There is one keyboard layout which anybody who has worked on a standard keyboard or

Explain the meaning of connect socket primitive, Explain the meaning of ...

Explain the meaning of CONNECT socket primitive. The connect Primitive: Clients utilize procedure connect to establish connection with an exact server. The form is

Hardware cost-network properties, Hardware Cost It refers to the cost i...

Hardware Cost It refers to the cost involved in the execution of an interconnection network. It consists of the cost of switches, connectors, , arbiter unit, interface logic an

Difference between blocking and non-blocking, Difference between blocking a...

Difference between blocking and non-blocking Verilog  language  has  two  forms  of  the  procedural  assignment  statement:  blocking  and  nonblocking. The two are distinguis

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