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

Key features of spontaneous networking, QUESTION a) Give a detailed exp...

QUESTION a) Give a detailed explanation of the following: Some dynamics systems can be built as variations on the client server model. b) Give one main drawback of the "Thin

What is virtual channel, What is virtual channel? Virtual channel is no...

What is virtual channel? Virtual channel is normally a connection from single source to one destination, although multicast connections are also allowed. The other name for vir

Mesh, Mesh It is of two dimensional network.  In this every processi...

Mesh It is of two dimensional network.  In this every processing elements are arranged in a two dimensional grid. The processor are in rows i and column j are denoted by PEi

Error detecting code - parity bit, Error Detecting Code - Parity bit: ...

Error Detecting Code - Parity bit: The general idea for achieving error detection and correction is to add some redundancy (i.e., some extra data) to a message, which receiver

Describe in details about applications of computer networks, Describe in de...

Describe in details about applications of Computer Networks ?

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.

What is ipv6 addressing, QUESTION (a) What are the problems with IPv4 o...

QUESTION (a) What are the problems with IPv4 on today's Internet and how does IPv6 solve these problems? (b) Describe at least three ways in which IPv6 is more efficient tha

Identify three udp characteristics, UPD is a layer 4 Transport protocol. It...

UPD is a layer 4 Transport protocol. It is connection-less due to it does establish a connection thus the 3 step handshake is not needed, it does NOT execute any flow control or ac

Protocol software and ethernet wiring, PROTOCOL SOFTWARE AND ETHERNET WIRIN...

PROTOCOL SOFTWARE AND ETHERNET WIRING:  All wiring methods use identical Ethernet specifications. e.g. they need same message format. They need same CSMA/CD algorithems. They m

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