Bernstein conditions for detection of parallelism, Computer Engineering

Assignment Help:

Bernstein Conditions for Detection of Parallelism

For implementation of instructions or block of instructions in parallel, it should be guaranteed that the instructions are independent of each other. These instructions can be / control dependent / data dependent resource dependent on each other.  We are considering only data dependency between the statements for taking decisions of parallel implementation. A.J. Bernstein has implicated the work of data dependency and resultant some conditions based on which we can settle on the parallelism of processes or instructions.

Bernstein conditions are rely on the subsequent two sets of variables:

i)  The input set or Read set RI that consists of memory locations examine by the statement of instruction I1.

ii)  The output set or Write set WI  that consists of memory locations printed into by instruction I1.

The sets WI and RI are not disjoint as the similar locations are used for writing and reading by SI.

The following are Bernstein Parallelism conditions which are determine to conclude whether the statements are parallel or not:

1) Position in R1 from which S1 reads and the Position W2  onto which S2 writes must be commonly exclusive. It  means S1does'nt read from any memory location onto which S2 writes. It can be indicated as:

                                                                     1510_Bernstein Conditions for Detection of Parallelism.png

 

2) Likewise, locations in R2 from which S1 writes and the locations W1 onto which S2 reads must be commonly exclusive.It means S2  does not read from some memory location onto which S1 writes. It can be indicate as:

                                                                       138_Bernstein Conditions for Detection of Parallelism 1.png

3) The memory locations W1 and W2 onto which S1 and S2 write, should not be examine by S1 and S2. It means R1 and R2 should be free of W1 and W2.  It can be indicated as :

                                                                      661_Bernstein Conditions for Detection of Parallelism 2.png

To demonstrate the operation of Bernstein's conditions, let consider the following instructions of sequential program:

I1 : x = (a + b) / (a * b)

I2 : y = (b + c) * d

I3 : z = x2 + (a * e)

Now, the read set and write set of I1, I2 and I3 are as given:

R1 = {a,b}                W1 = {x}

R2 = {b,c,d}             W2 = {y}

R3 = {x,a,e}             W3 = {z}

 

Now let us search out whether I1 and I2 are parallel or not

 

 

314_Bernstein Conditions for Detection of Parallelism 3.png

                                                        418_Bernstein Conditions for Detection of Parallelism 4.png


Related Discussions:- Bernstein conditions for detection of parallelism

Explain the term- viruses, Explain the term- Viruses Use of firewalls a...

Explain the term- Viruses Use of firewalls and ant-virus software to prevent viruses entering a computer. It's also sensible not to open attachments/emails from "unknown" sourc

Struct and class, https://dl.dropbox.com/u/41918180/Images/Pro%202/2.png ...

https://dl.dropbox.com/u/41918180/Images/Pro%202/2.png https://dl.dropbox.com/u/41918180/Images/Pro%202/3.png https://dl.dropbox.com/u/41918180/Images/Pro%202/4.png">https://dl.d

Program that will blink as led, Take the last two digits of your UTCID. Thi...

Take the last two digits of your UTCID. This is your duty cycle in percent. If your duty cycle is less than 10%, add 30 to your number. Create an assembly program that runs on t

What is compound statement, What is compound statement If we wish to ha...

What is compound statement If we wish to have more than one statement following the if or the else, they should be grouped together between curly brackets. Such a grouping is c

Concept development of project, Concept Development Journal General In...

Concept Development Journal General Information: Once you have researched and gained some insight into the topic you must then begin developing your ideas and your conceptua

Explain what is high debugging?, It is helped to recure the bugs. A program...

It is helped to recure the bugs. A program has problem that time this debugging is helped to solve the bugs is simply, this is the method of the recure bugs in the programming lang

Relationship between distributed and mobile computing, a) Briefly describe...

a) Briefly describe the relationship between distributed computing, mobile computing and pervasive computing. b) Suppose the following scenario, which demonstrate the possibili

What are the advantages of having e-commerce over extranets, What are the a...

What are the advantages of having e-commerce over extranets?     Extranets are about " joining up" the supply chain-suppliers, resellers, distributors, customers, etc.-enabling

Combinational circuit for sorting the string, Every input line of combinati...

Every input line of combinational circuit represents a specific element of the string let's say xi and every output line results in the form of a sorted list. In order to get the a

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