Example programmes for parallel systems-adding element, Computer Networking

Assignment Help:

Example Programmes for Parallel Systems

Now we shall complete this with the examples on shared memory programming.

Example 13: Adding elements of an array using two processor int sum, A[ n] ; //shared variables

void main ( ){

int i ;

for (i=0; i

// now create process to be implemented by processor P1

fork(1) add (A,n/2,n-1, sum); // process to add elements from index n/2 to -

1.sum is output variable         // now create process to be implemented by processor

 P0                                                                                           add (A,0,n/2-1, sum);

join 1 ;

printf ("%d", sum);

}

add (int A[ ], int lower, int upper, int sum) {

int sum1=0, i;

 for (i=lower; i<=upper; i++)

sum1=sum1+A[i];

lock sum;

sum=sum+sum1;

unlock sum ;

}

In this program, the last half of the array is passed to processor P1 which adds them. Meanwhile processor P0 adds the first half of the array. The variable sum is locked to avoid inconsistency.


Related Discussions:- Example programmes for parallel systems-adding element

Explain repeaters, Repeaters - Operate only in physical layer - Conn...

Repeaters - Operate only in physical layer - Connects two segments of the same LAN - Both segments must be of the same protocol - Only forwards frames; does not filter

Explain matric, Matric define as Formula of path selection

Matric define as Formula of path selection

Sorting using interconnection networks, The combinational circuits use the ...

The combinational circuits use the comparators for comparing the storing and number them on the basis of minimum and maximum functions. Likewise, in the interconnection networks th

Set cookies 1178345 - application layer, Set Cookies 1178345 When  Hus...

Set Cookies 1178345 When  Hussan  browser receives  the HTTP response  message it sees the set cookies header. The  browser then appends  a line to the special cookie file  th

What is bipolar encoding, Q. What is Bipolar Encoding? - Uses three vol...

Q. What is Bipolar Encoding? - Uses three voltage levels negative, positive and zero - Zero level represents binary 0; 1s are represented with alternating positive and negat

Switched virtual circuits, Most networks give dynamic connections, which la...

Most networks give dynamic connections, which last for a relatively short period. To operate this, ATM can dynamically join a switched virtual circuit (SVC), allow it last as long

Difference between a straight-through and crossover cable, What is the diff...

What is the difference between a straight-through and crossover cable? A straight-through cable is used to connect computers to a hub, switch, or router. A crossover cable is u

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