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 simd, What is SIMD? Single Instruction stream, Multiple Data st...

What is SIMD? Single Instruction stream, Multiple Data stream (SIMD) shows an organization that contains many processing units under the supervision of a common control unit. A

Difference between a null pointer and a void pointer, A NULL pointer is a p...

A NULL pointer is a pointer of any type whose value is zero. A void pointer is a pointer to an object of an unknown type, and is guaranteed to have sufficient bits to hold a pointe

Illustrate the term EDI trading patterns, Illustrate the term EDI Trading P...

Illustrate the term EDI Trading Patterns? EDI Trading Patterns are illustrated below: a. Hubs and Spokes: Several of the prime movers into the adoption of Electronic Da

What is an arithmetic processor, Q. What is an arithmetic processor? A ...

Q. What is an arithmetic processor? A distinctive CPU necessitates most of the control and data processing hardware for implementing non-arithmetic functions. As the hardware c

Numbers of students must be integer, A school district has I neighbourhoods...

A school district has I neighbourhoods, J schools and G grades at every school. Every school j has a capacity of C jg for grade g. In every neighbourhood i, the student population

Design requirements of sequential circuit, What are the Requirements to des...

What are the Requirements to design Sequential circuit Ans . Design Requirements of Sequential circuit: (i) The circuit specifications translated into a state diagram

Cryptarithmetic problem in artificial intelligence, Solve the following cry...

Solve the following cryptarithmetic problem using Prolog: P I N G P O N G + F U N --------- I G N I P Each of the 7 different letters stands for a different digit. The

Different types of coding in digital electronics, The code where all succes...

The code where all successive numbers differ from their preceding number by single bit is ? Ans. Gray Code, where all successive numbers are different from their preceding nu

Define the while loop, The while Loop The while loop repeats a statemen...

The while Loop The while loop repeats a statement until the test at the top proves false. As an example, here is a function to return the length of a string. int string_leng

Texts in the text elements of the program, Which Texts  in the text elemen...

Which Texts  in the text elements of the program helps in changing the displayed names of variables in the parameters statement. Selection text in the elements of the program

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