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

How many lists can a program can produce, How many lists can a program can ...

How many lists can a program can produce? Every program can produce up to 21 lists: one basic list and 20 secondary lists.  If the user makes a list on the next level (that is,

Illustrate about compact disk rewritable, Q. Illustrate about Compact Disk ...

Q. Illustrate about Compact Disk Rewritable? CD-RW optical disk can be repeatedly written and overwritten same as with a magnetic disk. Even though a number of techniques have

How do you debug a loadrunner script, VuGen have two options to help debug ...

VuGen have two options to help debug Vuser scripts-the Run Step by Step command and breakpoints. The Debug settings in the Options dialog box permit us to verify the extent of the

Script in multi user mode, What Component of LoadRunner would you use to pl...

What Component of LoadRunner would you use to play Back the script in multi user mode? Ans) The Controller component is used to playback the script in multi-user mode. This is c

Vector processing, Vector Processing  A vector is an ordered set of the...

Vector Processing  A vector is an ordered set of the similar type of scalar data items. The scalar item can be a floating point number, a logical value or an integer. Vector pr

Introduction to parallel computing, Introduction  To Parallel Computing ...

Introduction  To Parallel Computing Parallel computing has been a subject of importance in the computing community over the last few years. Ever-growing volume of databases and

Illustrate program on hypothetical machine, Q. Illustrate program on hypoth...

Q. Illustrate program on hypothetical machine? The program given in figure above is a hypothetical program which performs addition of numbers stored from locations 2001 onwards

How do we synthesize verilog into gates with synopsys, How do we synthesize...

How do we synthesize Verilog into gates with Synopsys?  The answer can, of course, occupy various lifetimes to completely answer.. BUT.. a straight-forward Verilog module can b

Explain about the flash memories, Explain about the Flash memories Thes...

Explain about the Flash memories These are re-writable non-volatile memories evolved from EEPROM; they are generally connected to the USB port on the computer enabling a user t

Find minimum number of resource so that no deadlock arise, An operating sys...

An operating system contains 3 user processes each requiring 2 units of resource R. The minimum number of units of R such that no deadlocks will ever arise is? Ans. The minimum

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