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

What is error checking, What is error checking? It computes the error c...

What is error checking? It computes the error correcting code (ECC) value for the data read from the given sector and compares it with the corresponding ECC value read from the

Advantage of using interrupt initiated data transfer, What is the advantage...

What is the advantage of using interrupt initiated data transfer over transfer under program control without interrupt? In the interrupt initiated data transfer, the processor

Show the comparison of ascii and ebcdic, Q. Show the Comparison of ASCII an...

Q. Show the Comparison of ASCII and EBCDIC? EBCDIC is an easier to employ code on punched cards due to BCD compatibility. But ASCII has some of major benefits on EBCDIC. These

Show the bus and memory transfers, Q. Show the Bus and Memory Transfers? ...

Q. Show the Bus and Memory Transfers? A digital computer has many registers and rather than connecting wires amid all registers to transfer information between them a common bu

How optimization is achieved in dns, How optimization is achieved in DNS? ...

How optimization is achieved in DNS? Two primary optimizations used in DNS and they are: replication and caching. All root servers is replicated; various copies of the server

Define mfc, Define MFC. To accommodate the variability in response time...

Define MFC. To accommodate the variability in response time, the processor waits unless it receives an indication that the requested read operation has been done. The control s

What are the primary models of supply chain management, What are the primar...

What are the primary models of Supply Chain Management? Two Primary models of Supply Chain Management are illustrated below: a. Porter’s Value Chain Model and b. Supply

Data analysis and results in e-commerce, There were 50 respondents to our s...

There were 50 respondents to our survey. The first component of the data examined here focuses on student's preference (ecommerce or traditional commerce). The Second compone

How do we bind keys to menus for shortcuts in gimp, Make ensure that "Use d...

Make ensure that "Use dynamic keyboard shortcuts" option in "Interface" tab of Preferences dialog is enabled, then go to the menu selection you are interested in. Keeping it select

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