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

Convert the following binary numbers into octal, Q. Convert the following B...

Q. Convert the following BINARY numbers into OCTAL, double check by converting the result OCTAL to BINARY. a) 111.111 b) 10110111 c) 0.11111

#chemistry, Please explain the construction and working of calomel electrod...

Please explain the construction and working of calomel electrode..

Cheques vs credit cards, Cheques vs Credit Cards       E-cheques:  E-ch...

Cheques vs Credit Cards       E-cheques:  E-cheques are used for business dealing in e-commerce.  Transactions of these cheques take place on Internet. In this system the elect

Prolog programming language, Prolog Programming Language : Probably pr...

Prolog Programming Language : Probably programming languages are procedural: than the programmer specifies exactly the right instructions (algorithms) required to get an agent

Explain syntax of recursion, Syntax of recursion int fib(int num) /*...

Syntax of recursion int fib(int num) /* Fibonacci value of a number */ {      switch(num) { case 0: return(0); break; case 1: return(1); break; default:  /* Incl

Example to show a single digit, Q. Example to show a single digit ? Dis...

Q. Example to show a single digit ? Displaying a single digit (0 to 9) Presume that a value 5 is stored in BL register then to output BL as ASCII value add character ‘0' to

Recursion to an iterative procedure, The data structure required to convert...

The data structure required to convert a recursion to an iterative procedure is  Stack is the data structure required to convert a recursion to an iterative procedure

Biological motivation - two layer artificial neural networks, Biological Mo...

Biological Motivation : However remember there that in discussion first lecture is about how people have answered the question like: "How are we going to get an agent to proce

Average enzyme activity , Activity of a some  enzyme was calculated  in ext...

Activity of a some  enzyme was calculated  in extracts from brain, heart and lung. In every  tissue,  the activity was calculated  various  times, giving the following results (in

Describe the horizontal frequency or cycle, Q. Describe the Horizontal Freq...

Q. Describe the Horizontal Frequency or cycle? Horizontal Frequency: The time to scan one line connecting the right edge to left edge of the screen horizontally is known as t

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