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 the main characteristics of semiconductor memory, Explain the Main ...

Explain the Main characteristics of semiconductor memory Memory, with regard to computers, most commonly signifies to semiconductor devices whose contents can be accessed (whic

What is byte addressable memory, What is byte addressable memory? The a...

What is byte addressable memory? The assignment of successive addresses to successive byte locations in the memory is known as byte addressable memory.

Why we need the need of parallel computation, THE NEED OF PARALLEL COMPUTAT...

THE NEED OF PARALLEL COMPUTATION   With the growth of computer science, computational pace of the processors has also increased many a times. Though, there are definite constr

Explain process control block, Explain Process Control Block Process Co...

Explain Process Control Block Process Control Block (PCB): Information related with every process is stored in Process control Block. a) Process state b) Program counter c

Observed speedup and parallel overhead, Observed Speedup Observed speed...

Observed Speedup Observed speedup of a system which has been parallelized, is defined as:                             Granularity is one of the easiest and most extensi

Addressing relationship for main memory and cache, Q. Addressing Relationsh...

Q. Addressing Relationship for Main Memory and Cache? In the normal case there are 2k words in cache memory and 2n words in main memory. The n-bits memory address is splitted i

What do you mean by u-area or u-block, What do you mean by u-area (user are...

What do you mean by u-area (user area) or u-block? This having the private data that is manipulated only by the Kernel. This is local to the Process, i.e. every process is a

Auto increment mode and condition code flags, Described auto increment mode...

Described auto increment mode of addressing? Ans: Effective address of the operand is the contents of a register mention in the instruction. After finishing the accessing t

Illustrate role of world wide web in field of e-commerce, Illustrate the ro...

Illustrate the role of World Wide Web into the field of e-commerce. In the 1990 year, the advent of the World Wide Web upon the Internet represented a turning point into e-com

Multi-threaded processors, Multi-Threaded Processors In unit 2, we have...

Multi-Threaded Processors In unit 2, we have gone through the use of distributed shared memory in parallel computer architecture. Although the use of distributed shared memory

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