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

Give brief summary of common aspects found in spreadsheets, Give brief summ...

Give brief summary of common aspects found in spreadsheets -  It's made up of columns and rows; every row is identified by a number and every column is identified with a letter

Explain the process of theory driven discovery, Question 1 Explain brie...

Question 1 Explain briefly the process of matching production rules against working memory 2 Explain Simplification, Conjunction and Transportation in propositional logic by

Register transfer micro-operations, Register Transfer Micro-operations ...

Register Transfer Micro-operations These micro-operations as the name proposes transfer information from one register to another. The information doesn't change during these mi

Copy machine problem, We are trying to figure out how many copy machines we...

We are trying to figure out how many copy machines we should install in the basement of Stranahan Hall.  Copy machines should be available 24/7.  Students may walk up at any time o

Types of addressing modes in assembly language, Types of Addressing Modes: ...

Types of Addressing Modes: Each instruction of a computer mentions an operation on certain data. There are many ways of specifying address of the data to be operated on. These

What are the functions of dispatcher, What are the functions of dispatcher?...

What are the functions of dispatcher? There are four fuctions of dispatcher:- A)  Equal distribution of transaction load to the work processes.  B) Management of buffer a

Explain about iframe, Q. Explain about IFRAME? is an HTML 4.0 addition...

Q. Explain about IFRAME? is an HTML 4.0 addition to frames toolbox. Presently only MSIE supports . Unlike frames created employing and

Explain macro definition, Explain macro definition. A unit of specifica...

Explain macro definition. A unit of specification for a program generation is termed as a macro. This consists of name, body of code and set of formal parameters.

Explain the term granularity, Granularity In 'Parallel computing', Gran...

Granularity In 'Parallel computing', Granularity can be defined as a qualitative assess of the ratio of computation to communication. 1) Coarse Granularity - relatively hug

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