Task decomposition and data decomposition, Operating System

Assignment Help:
Discuss the concepts of task decomposition and data decomposition within the context of parallel programming.
  • Parallel programming or parrelel computing is the simultaneous use of multiple compute resources to solve a given problem. Parallel program always onsists of simultaneously executing processes, problem decomposition relates to the way in which these processes are formulated. This classification can also be referred to as algorithmic skeletons or parallel programming paradigms. The basic two catagorizations in  parallel programming paradigms are task decomposition and data decomposition.

Task decomposition refers to the whole-part composition structure of a task model. In every level of the decomposition individual tasks are heuristically seen as representing those subtasks that are the steps which describe the procedural content of the whole task entity. The association relationship encapsulates this portion of meaning that go across the limits of the individual entities. A task-parallel model focuses on processes, or threads of execution. The processes are often behaviourally dissimiler, which stresses on the need for communication. Task parallelism provides a natural way to express message-passing communication. It is usually classified as MIMD/MPMD or MISD.

Data parallelism emphasizes on redistributing the whole data into the different parallel computing nodes. This is achieved when each processor begins performing the same task on the individual pieces of distributed data. In certain situations, a single execution thread may control the operations on all pieces of data. In others, individual threads control the operation, but overall they run the same code. Data parallelism focuses on the distributed nature of the data(parallelized), as opposed to the processing.

Most real programs fall somewhere on a continuum between task parallelism and data parallelism.


Related Discussions:- Task decomposition and data decomposition

What are the advantages and disadvantages of multithreading, What are the a...

What are the advantages and disadvantages of multithreading?  Advantages : Since by multithreading multiple executions are carried out in the same process environment t

Determine a processing that is not a part of synthesis phase, Determine a p...

Determine a processing that is not a part of Synthesis phase  Perform LC processing is not a part of Synthesis phase

Define page stealing, Define Page stealing    Page stealing is taking ...

Define Page stealing    Page stealing is taking page frames another working sets

Explain structure, Explain Structure The Grammar for programming langua...

Explain Structure The Grammar for programming language is a formal description of Structure

Determine the syntax of the assembler directive equ, Determine the syntax o...

Determine the syntax of the assembler directive EQU The following is syntax of the assembler directive EQU: EQU

Write in brief on unix file structure, Write in brief on UNIX file structur...

Write in brief on UNIX file structure. UNIX considers every file to be a sequence of 8-bit bytes no interpretation of these bits is made by the operating system. This system pr

Distinguish among pcs and scs scheduling, Q. Distinguish among PCS and SCS ...

Q. Distinguish among PCS and SCS scheduling. Answer: PCS scheduling is completed local to the process. It is how a thread library schedules threads onto available LWPs. SCS sch

Advantages and disadvantages of multiprogramming, Q. Advantages and disadva...

Q. Advantages and disadvantages of multiprogramming? Advantages 1.    High CPU utilization. 2. It appears that many programs are allotted CPU almost concurrently. D

Explain the purpose of command-line application, Question: a) The follo...

Question: a) The following questions refers to Windows XP networking: i) Briefly, explain how a host joins a network using DHCP? ii) Which IP address could be assigned to a

Graph - plotting job, This exercise uses a graph-plotting program ( gnuplot...

This exercise uses a graph-plotting program ( gnuplot ) to convert tabular data into an image. This is a technique that is very widely used to visualize scientific data; with app

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