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 non-volatile bios, Nonvolatile BIOS memory refers to a small memory...

Nonvolatile BIOS memory refers to a small memory on PC motherboards that is used to kept BIOS settings. It was traditionally known as CMOS RAM because it used a volatile, low-power

Segment combinations, Segment Combinations In 8086 assembler provides a...

Segment Combinations In 8086 assembler provides a means for combining segments declared in various modules. Some typical combine types are: 1.   PUBLIC: This combine directi

Explian service topologies, Explian Service Topologies Service Topolog...

Explian Service Topologies Service Topologies In a service-based architecture there increase dependencies between services resulting from cooperation

Are there standards for electronic imaging, Are there standards for electro...

Are there standards for electronic imaging? Given the sensitive nature of most permanent records, there are microphotography standards in place which contain microfilm, compute

How is transaction processing system affected, How is Transaction Processin...

How is Transaction Processing System affect performance of e-commerce sites? Transaction Processing System influences performance of e-commerce sites: Transaction-Processing

Prove using boolean algebra, Q.Prove using Boolean Algebra 1. X (X+Y) = ...

Q.Prove using Boolean Algebra 1. X (X+Y) = X 2. AB + AC + BC' = AC + BC' 3. (A+B+C) (A+B'+C') (A+B+C') (A+B'+C)=A 4. (A+B'+C) (AB+A'C) = (A+C) (A'+B) 5. XY + XZ + YZ

What is data in computers, Q. What is data in computers? In modern digi...

Q. What is data in computers? In modern digital computers data is signified in binary form by employing two symbols 0 and 1. These are known as binary digits or bits however da

What are dynamic process groups, Q. What are Dynamic Process Groups? To...

Q. What are Dynamic Process Groups? To create and manage dynamic groups a separate library libgpvm3.a should be linked with the user programs which make use of any of group fun

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