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

Reference models - fundamentals of networks, Reference models Design...

Reference models Designing  implementing and  manufacturing  computer  networks  and related  devices  are very  complex  activities. Therefore in order  for this  technolog

Network Topology, What are the different types of network topologies

What are the different types of network topologies

Explain sonet frame transaction, Sonet Frame Transaction Transmitted ...

Sonet Frame Transaction Transmitted one subsequent to another without any gap in between. First 2 bytes - alignment bytes. F628 in Hex. - define the beginning of every

Explain about switching networks, Question 1: a. Differentiate between ...

Question 1: a. Differentiate between the several types of switching networks together with illustration. b. With the help of a diagram explain the two modes of operation un

Determine the concept of placing antenna on hieght, Determine the concept o...

Determine the concept of placing antenna on hieght First, starting deployment simply placed cells in regions where there was high density of vehicle or human population. Once t

What is the client side of applications, What is the client side of applica...

What is the client side of applications To build the client side of applications, developers use various tools. Some of the popular software development environments include Vi

Length- transport layer, Length This is a 16 bit  field  that  defines...

Length This is a 16 bit  field  that  defines  the total  length  of the user  datagram, header  plus data. This 16 bit  can define  a total  length  of a 0 to 65, 535 bytes.

Name the 10base5 connectors, 10Base5 Connectors Transceiver - inter...

10Base5 Connectors Transceiver - intermediary device as well called a medium attachment unit (MAU) Performs CSMA/CD function may perhaps contain small buffer Atta

Multi tasking environment, Multi Tasking Environment Multi tasking exp...

Multi Tasking Environment Multi tasking exploits parallelism by: 1)  Concurrently using the multiple functional units 2)  Pipelining functional units are pipe line toget

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