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

Executing a parallel algorithm, Q. Executing a parallel algorithm? Mult...

Q. Executing a parallel algorithm? Multiple processors need synchronization with one another when executing a parallel algorithm. So task which is running on processor X may ha

Various threats posed by server in client server environment, Explain vario...

Explain various threats posed through servers into a client server environment. Server Destroyed within an Accident: Power failures, Leaking pipes and equipment failures are no

Additions of numbers by using 2’s complement, Add +25 to -15 by using 2's c...

Add +25 to -15 by using 2's complement ? Ans. Firstly convert the numbers 25 and 15 in its 8-bit binary equivalent and determine the 2's complement of 15, after that add +25 to -

Requirements of decision support system, Q. Requirements of decision suppor...

Q. Requirements of decision support system? a) Fast computation A decision maker is able to perform a large number of computations very quickly and that too at a low cost

What is mqseries channel, Channel means logical communication link. There a...

Channel means logical communication link. There are two parts of channels a) Message channel, b) MQI channel   1) Mesage channel use for communication among QMgr to Q

Obstacles to is implementation - information system, Obstacles to IS implem...

Obstacles to IS implementation While information systems are now becoming the norm in most organisations the journey to this point has been a difficult one. Even in the 21st c

Explain FIFO page replacement algorithm, Explain FIFO Page replacement algo...

Explain FIFO Page replacement algorithm. FIFO policy: This policy only removes pages in the order they entered in the main memory. By using this policy we simply eliminate a

Write a subroutine in c for toggling the cursor, Write a subroutine in C fo...

Write a subroutine in C for toggling the cursor using old directives. ; ; use small memory model for C - near code segment _DATA SEGMENT WORD   'DATA'   CURVAL EQU   [B

How a procedure define in assembly, Q. How a Procedure define in Assembly ?...

Q. How a Procedure define in Assembly ? Procedure is defined within source code by placing a directive of form: PROC A procedure is terminated using: ENDP The

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