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

Why we use debugger, Q. Why we use Debugger? Debugger is a program whic...

Q. Why we use Debugger? Debugger is a program which allows the user to test as well as debug the object file.  Theuser can use this program to perform subsequent functions.

Write hit policies, Write Hit Policies: Write through o   Upd...

Write Hit Policies: Write through o   Update next level on every write o   Cache is always clean o   A lots of traffic to next level (mostly write) Write

Define message passing, Q. Define Message Passing? The PVM communicatio...

Q. Define Message Passing? The PVM communication model offers asynchronous blocking receive and asynchronous blocking send and nonblocking receive functions. In our terminology

What is delayed branching, What is delayed branching? A method called d...

What is delayed branching? A method called delayed branching can minimize the penalty incurred as a result of conditional branch instructions. The idea is easy. The instruction

Advantages and disadvantage of message passage programming, Q. Advantages a...

Q. Advantages and Disadvantage of Message Passage Programming? Advantages of Message Passage Programming     Portable It is less error prone Offers excellent

What is an activex interface, An ActiveX interface is a group of linked fun...

An ActiveX interface is a group of linked functions that are grouped together

Multidimensional arrays defined in terms of an array, How is multidimension...

How is multidimensional arrays defined in terms of an array of pointer? An element in a multidimensional array like two-dimensional array can be shown by pointer expression as

Cloud computing, When Workday opened in 2005, the company had no idea it wo...

When Workday opened in 2005, the company had no idea it would be regarded as the most successful IPO of 2012. The introduction of cloud computing into the HR and financial systems

What is macro call, What is macro call? Explain. Macro call: While a...

What is macro call? Explain. Macro call: While a macro name is used along with a set of actual parameters this is replaced through a code generated from its body. Such code

What is binary adder, What is binary adder? Binary adder is constructed...

What is binary adder? Binary adder is constructed with full adder circuit linked in cascade, with the output carry from one full adder linked to the input carry of next full ad

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