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

Calculate quantities from information in bayesian network, 1. A Bayesian ne...

1. A Bayesian network is shown for the variables paper Thickness, paper Alignment and Print Quality. The conditional probabilities are provided in the tables beside the nodes. Here

Address translation with dynamic partition, Address translation with dynami...

Address translation with dynamic partition : Given figure shows the address translation process with dynamic partitioning, where the processor provides hardware support for

Describe arp message format in brief, Describe ARP message format in brief....

Describe ARP message format in brief.                             0                                        8                                      16

Knowledge of the environment - artificial intelligence, Knowledge of the E...

Knowledge of the Environment: We must discriminate between knowledge an agent receives through its sensors and knowledge about the world from which the input comes. The world

the bias and standard error , A random variable (X) is modelled as an expo...

A random variable (X) is modelled as an exponentially distributed with mean 30 units. Simulate N = 50 samples from this distribution, and every sample must have m = 20 simulated va

How are devices represented in unix, How are devices represented in UNIX? ...

How are devices represented in UNIX? All devices are shown by files called special files that are located in /dev directory. Therefore, device files and other files are named a

Hazards of pipeline - computer architecture, Hazards of pipeline - computer...

Hazards of pipeline - computer architecture: Hazards : When a programmer (or compiler) writes assembly program code, they make the supposition that each instruction is execut

Segment combinations, Segment Combinations In 8086 assembler provides a...

Segment Combinations In 8086 assembler provides a means for combining segments declared in various modules. Some typical combine types are: 1.   PUBLIC: This combine directi

Define protocol, Define Protocol. It is a set of rules that are followe...

Define Protocol. It is a set of rules that are followed by interconnecting computers and terminals to make sure the orderly transfer of information

Execution of a program in cpu, Execution of a program in CPU is completed e...

Execution of a program in CPU is completed employing different set of registers and their individual circuitry. As CPU registers are used for execution of interrupt service routine

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