Explain bernstein conditions for detection of parallelism, Computer Engineering

Assignment Help:

Bernstein Conditions for Detection of Parallelism

For execution of a number of instructions or a block of instructions in parallel, it must be made certain that instructions are independent of one another. These instructions may be control dependent / resource dependent / data dependent on one another. Here we think about just data dependency among the statements for taking decisions of parallel execution. A.J. Bernstein has elucidated the work of data dependency and derived a number of conditions based on that we can decide the parallelism of processes or instructions.

Bernstein conditions are derived from the subsequent two sets of variables:

i)  The Read set or we can say input set RI which consists of memory locations read by statement of instruction I1.

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

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

The following are 'Bernstein Parallelism conditions' that are used to conclude whether statements are parallel or not:

1)  Locations in R1 from which S1 reads and locations W2 on which S2 writes should be mutually exclusive. Which means S1 doesn't read from any memory location on which S2 writes. It can be indicated as

  R1 ∩ W2= ?

2)  In the same way, locations in R2 from that S2 reads and the locations W1 on that S1 writes should be mutually exclusive. Which means S2 doesn't read from any memory location onto that S1 writes. It can be designated as: 

R2 ∩ W1= ?

3)  The memory locations W1 and W2, on that S1 and S2 write must not be read by S1 and S2. Which means R1 and R2 must be independent of W1 and W2.  It can be indicated as:

W1 ∩ W2= ?

To demonstrate the operation of Bernstein's conditions, think about subsequent 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 follows:

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

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

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

Now let's find out whether I1 and I2 are parallel or not

            R1 ∩ W2 = ?

            R2 ∩ W1 = ?

            W1 ∩ W2 = ?

Which means I1 and I2 are independent of each other.

Similarly for I1 || I3,

R1 ∩ W3= ?

R3 ∩ W1 ≠ ?

W1 ∩ W3= ?

Therefore I1 and I3 aren't independent of each other.

For I2 || I3,


R2 ∩ W3= ?

            R3 ∩ W2= ?

W3 ∩ W2= ?

Therefore, I2 and I3 are independent of one another. So I1 and I2, I2 and I3 are parallelizable however I1 and I3 are not.


Related Discussions:- Explain bernstein conditions for detection of parallelism

Object-oriented program and cell controlled class architectu, Object-Orient...

Object-Oriented Program And Cell Controlled Class Architecture To the variety of scenarios, generic cell control architecture can be applied. An object oriented programming lan

Explain about the e-commerce over extranets, Explain about the e-commerce o...

Explain about the e-commerce over extranets. Extranets are regarding “joining up” the supply chain-suppliers, distributors, resellers and customers are enabling business-to bus

Explain the memory transfer process, Q. Explain the Memory Transfer process...

Q. Explain the Memory Transfer process? Memory Transfer Transfer of information from memory to outside world which implies I/O Interface is known as a read operation. Tra

Depth in cutoff search, Depth in Cutoff search: The depth is chosen in...

Depth in Cutoff search: The depth is chosen in advance to certify in which the agent does not capture much more long to choose a move: however, if it has longer, well then we

By which companding helps in reducing signal, Companding helps in reducing ...

Companding helps in reducing with respect to signal:  (A) Interference                    (B) Signal overloading (C) Non linearity                 (D) Quantization noise

Weight training calculations, Weight Training Calculations: However we...

Weight Training Calculations: However we have more weights in our network than in perceptrons but we firstly need to introduce the notation as: w ij just to specify the weigh

Quantitative analysis, solve the primal problem using duality and determine...

solve the primal problem using duality and determine the primal and dual solution P= 300x1 + 300x2 S.T. 2x1 + 3x2 => 13 3x1 = 2x2 => 15 x1,x2 => 0

What is vertical organization and horizontal organization, What is vertical...

What is vertical organization and horizontal organization? Highly encoded schemes that use compact codes to state only a small number of control functions in every microinstruc

Define local area network, LAN is a privately - owned computer networks con...

LAN is a privately - owned computer networks confined to small geographical area, like a factory or an office widely used to connect office PCs to share resources and information.

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