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

Poor human support - obstacle to information system, Poor human support - O...

Poor human support - Obstacle to Information System The full utility of an IS will only be realised if it is properly supported by the users. Technology is never a solution in

Determine the negation of the statement, Determine the negation of the stat...

Determine the negation of the statement? "2 is even and -3 is negative"? Answer: 2 is odd or -3 is not negative.

Which device changes from serial data to parallel data, Which device change...

Which device changes from serial data to parallel data ? Ans. Demultiplexer is the device that changes from serial data to parallel data. Demultiplexer takes data in from on

Associativity of connectives - equivalences rules, Associativity of Connect...

Associativity of Connectives : Here brackets are very important in order to tell us where to perform calculations in arithmetic and logic. By using these brackets we evaluate

What is sector sparing, What is sector sparing? Low-level formatting al...

What is sector sparing? Low-level formatting also sets aside spare sectors not visible to the operating system. The controller can be told to change each bad sector logically w

What is the difference between dpi and ppi, Question : (a) "Resolution ...

Question : (a) "Resolution refers to the sharpness and clarity of an image" (i) Explain what you understand by the above statement. (ii) What is the difference between D

Typicality of virtual addresses, The typicality of virtual addresses is tha...

The typicality of virtual addresses is that: They are longer than physical addresses because total addressed memory in virtual memory is more than actual physical memory.

The average quiz score for every student, Make a spreadsheet that has on ev...

Make a spreadsheet that has on every line an integer student identification number followed by 3 quiz grades for that student.  Go though that information from the spreadsheet into

State the datatypes of verilog, State the datatypes of Verilog Verilog....

State the datatypes of Verilog Verilog. Compared to VHDL, Verilog data types are very simple, easy to use and very much geared towards modeling hardware structure as opposed to

Flowchart, How to calculate the flowchart

How to calculate the flowchart

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