Identifying parallelism, Operating System

Assignment Help:

Identifying parallelism

A formal way to identify parallelism in an activity is to draw a task dependence graph in a directed graph in which each vertex represents a task to be completed. An edge from vertex u to vertex means that task u must be completed before task v begins, so that task v "depends on" u. If there is no path from u to v, then the tasks are independent and may be performed concurrently. Consider the following problem: Alice is the leader of a crew of workers who maintain a large estate. There are four principal tasks: mowing the lawns, pruning the trees and hedges, repairing the fences, and inspecting the work to ensure it has all been done satisfactorily. Mowing must be completed before the work is inspected, as must the pruning and fence repair. The estate has a security system which must be switched off before work commences (i.e. before Alice and her team arrives), and switched on again after the team leaves.

  • Draw the dependence graph corresponding to the above problem, showing all the tasks involved. (In a project management plan, this scheme is often referred to as a "work breakdown structure").
  • Alice has 8 people in her crew, including herself. (The crew members are: Alice, Bert, Cressida, Dominic, Edgar, Frank, Gus and Harriet). Alice will be solely responsible for inspecting the work, but decides that she herself and three other people (Bert, Dominic and Gus) will mow the estate's four lawns (referred to as north, south, west and east lawns, each of which are of equal area), two other people (Cressida and Frank) will prune the trees, whilst Edgar and Harriet will repair the fences. Redraw the graph to show the allocation of the crew to particular tasks. (Hint: a single task in the original graph may be come multiple tasks in the revised version, each of which is performed by a particular person).
  • Alice is a fast worker, and can mow any of the lawns in one hour, as can Dominic. Frank and Gus can complete any of the manual tasks in two hours. Bert, Cressida, Edgar and Harriet take three hours to do their work. If the manual work starts at 10:00 a.m. in the morning, at what time scan Alice inspect the work? In your answer, refer to the dependence graph showing the allocation of crew to tasks.

Since mowing is done first and then all team members start the work simuntaneosly and Alice can only inspect after each has finished their task the time taken by the slowest team members will be seen here.

Harriert/Bert/Credessia and Edgar take 3 hrs each to complete their task.

The manual work starts at 10.00 AM so the inspection will start 3+3 =6 hrs after that.


Related Discussions:- Identifying parallelism

Define overflow chaining, Define Overflow Chaining Another method will ...

Define Overflow Chaining Another method will divide the pre-allocated table into two sections: the primary area to determine which keys are mapped and an area for collisions, g

Estimate the balking rate, People arrive at a barber shop at the rate of on...

People arrive at a barber shop at the rate of one every 4.5 minutes. If the shop is full (it can hold five people altogether), 30% of the potential customers leave and come back i

Explain the various methods for handling deadlocks, Explain the various met...

Explain the various methods for handling deadlocks.      A set of processes is deadlocked if every process in the set is waiting for an event that only a process in the

What are turnaround time and response time, What are turnaround time and re...

What are turnaround time and response time? Turnaround time is the interval among the submission of a job and its completion. Response time is the interval among submission

What is the purpose of the command interpreter, What is the purpose of the ...

What is the purpose of the command interpreter? Why is it usually separate from the kernel? It reads commands from the user or from a file of commands and executes them, usuall

Inter-process Communication !, My code it didn''t run properly ,i tried to ...

My code it didn''t run properly ,i tried to pass 2 parameter example : ./a.out ls -ll ,but it execute only the ls instead of the ls -ll ! plz help amd thank you ! #include #inclu

Utility programs, Utility Programs: those programs which are not the essen...

Utility Programs: those programs which are not the essential part of operating system. But they provide different utilities / features to the users e.g. MS-DOS : Fdisk, FORMAT, AT

Starvation, what do you mean by starvation?explain in detail

what do you mean by starvation?explain in detail

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