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

Name the connecting devices of bridges, Connecting Devices of bridges -...

Connecting Devices of bridges - Five kinds: - Repeaters - Hubs - Bridges - Two- and three-layer switches - Repeaters and hubs - layer one of Internet model -

Twisted pair cable - computer network, Twisted Pair Cable Twisted pair...

Twisted Pair Cable Twisted pair cable  consists of two insulated copper  wires  each  about 1 mm  thick arranged in a regular spiral  pattern. The wires  are twisted together

Define the difference among trusted and untrusted networks, Can you define ...

Can you define the difference among trusted and untrusted networks?

Explain the uses of firewall in computer, Explain the uses of Firewall in c...

Explain the uses of Firewall in computer For Intranet developers, restricting access of unauthorised users to the Web site has been the greatest challenge. In addition to preve

Local and wide area networking, A. Current setting A new bank has its he...

A. Current setting A new bank has its headquarters located in City A. Recently, the bank has opened its first branch in City B, and its data centre in City C. The three cities a

Butterfly permutation, Butterfly permutation This permutation is gettin...

Butterfly permutation This permutation is getting by interchanging the important significant bit in address with smallest significant bit.

What is multicast routing, What is multicast routing? Sending a message...

What is multicast routing? Sending a message to a group is known as multicasting, and its routing algorithm is known as multicast routing.

Introduction to parallel programming, Introduction To Parallel Programming ...

Introduction To Parallel Programming After getting an enormous breakthrough in the serial programming and figuring out its limitations, academicians and computer professionals

Difference among flow control and error control, What is the difference am...

What is the difference among  flow control and error control?    Ans) Flow control: adjust and confirm data flow rate for successful transmission. Error Control: a method to

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