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

Various ways of floating point representation in memory, Describe the vario...

Describe the various ways of floating point representation in memory. What is the importance of normalizing the mantissa in this representation? Explain it by example(s)?

What are the steps in multiplication algorithm, What are the steps in multi...

What are the steps in multiplication algorithm?   Check for zeros.   Multiply mantissas   Add the exponents.   Normalize the product.

Define the arithmetic micro-operations, Q. Define the Arithmetic Micro-oper...

Q. Define the Arithmetic Micro-operations? These micro-operations execute simple arithmetic operations on numeric data stored in registers. The fundamental arithmetic micro-ope

Reading every record , You have a file having sporting goods that are sold ...

You have a file having sporting goods that are sold online. Every item record contains the item id, item name, item description, item category, item price, and the units in stock.

What is a pipeline hazard, What is a pipeline hazard? Any condition tha...

What is a pipeline hazard? Any condition that causes the pipeline to stall is known as hazard. They are also known as stalls or bubbles.

How is the command suppress-dialog useful, How is the command Suppress-Dial...

How is the command Suppress-Dialog useful? Suppressing whole screens is possible using this command.  This command permits us to perform screen processing "in the background".

GRID COMPUTING, I NEED THE CODES IN MATLAB FOR RESOURCE ALLOCATION IN GRID ...

I NEED THE CODES IN MATLAB FOR RESOURCE ALLOCATION IN GRID COMPUTING

Define cpu scheduling, Define CPU scheduling. CPU scheduling is the met...

Define CPU scheduling. CPU scheduling is the method of switching the CPU among various processes. CPU scheduling is the basis of multiprogrammed operating systems. By switching

Mathematical simulation and modeling applications, Mathematical Simulation ...

Mathematical Simulation and Modeling Applications The tasks including modeling and mathematical simulation require a lot of parallel processing. Three basic formalisms in model

Discuss in detail table management techniques, Discuss in detail Table mana...

Discuss in detail Table management Techniques? An Assembler uses the subsequent tables: OPTAB: Operation Code Table consists of mnemonic operation code and machine langua

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