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

Explain working of counters, Q. Explain working of Counters? A counter ...

Q. Explain working of Counters? A counter is a register that goes through a predetermined sequence of states when clock pulse is applied. In principle value of counters is incr

Why a function canot have delays, Why a function canot have delays? How...

Why a function canot have delays? However in Open Vera, delays are allowed in function. A function returns a value and hence can be used as a part of any expression. This doesn

Page translation table, Make a page translation table the meets the require...

Make a page translation table the meets the requirements of the virtual memory system given below.  Suppose page (and frame) sizes of 20 with pages 0 by 3 in logical memory and fra

Explain bus, Define bus. When a word of data is transferred among units...

Define bus. When a word of data is transferred among units, all the bits are transferred in parallel over a set of lines called bus. In addition to the lines that take the data

Explain clearly the difference between j-cuts and l-cuts, Question: (a)...

Question: (a) Explain clearly the difference between J-cuts and L-Cuts. (b) What is the function of the rate stretch tool? (c) What's the difference between an Image Matt

Graphic symbol of S-R flip-flop, Q. Graphic symbol of S-R flip-flop? R...

Q. Graphic symbol of S-R flip-flop? R-S Flip flop - Graphic symbol of S-R flip-flop is displayed in Fig below. It has 3 inputs S (set), R (reset) and C (for clock). Q(t+1) is

What is microcomputers, Q. What is Microcomputers? Microcomputers have ...

Q. What is Microcomputers? Microcomputers have become a common part of everyday life. The cost ranging from a few hundred to about ten thousand dollars, today's 16- and 32-bi

What is dialog box, This is a small window that is demanding your attention...

This is a small window that is demanding your attention. You must respond before you can carry on using the program that shown the dialog box. A dialog box does not have a minimize

Define master construct in fortan, Q. Define Master Construct in FORTAN? ...

Q. Define Master Construct in FORTAN? The master directive has following general form:  #pragma omp master structured_block  It causes master thread to execute structu

Define dma, Define DMA. The transfer of data among a fast storage devic...

Define DMA. The transfer of data among a fast storage device such as magnetic disk and memory if often limited by the speed of the CPU. Removing the CPU from the path and letti

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