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

Android application development using java, This is a group project as desc...

This is a group project as described in the 'AssignmentDescription.pdf' file. I am doing a sub project which is "sub project Mobile application. Android or Apple based. Turn based

Explain the novell netware, Explain the Novell NetWare     NetWare does...

Explain the Novell NetWare     NetWare doesn't really have the concept of processes in the architecture, as  the most closely associated element in the NetWare  environment to

Explain the concept of process, Q. Explain the Concept of Process? A pr...

Q. Explain the Concept of Process? A process is sequential program in execution. A process states the basic unit of computation for the computer. Components of process are:

Provide two programming examples of multithreading, Normal 0 fa...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4 Provide two programm

Explain the types of system calls, Explain the Types of System Calls Th...

Explain the Types of System Calls The major types of system calls are like this: a. Process Control: These types of system calls are employed to control the processes.

What is the hardware support required to implement paging, What is the hard...

What is the hardware support required to implement paging? Each operating system has its own techniques for storing page tables. The majority allocates a page table for each pr

Split the hexadecimal format, The following is a dump of a TCP header in h...

The following is a dump of a TCP header in hexadecimal format: 00CD0018 00000EF1 00000D5D 502200D1 01BF0010 We need to first split the above hex as such 00 CD 00 18 00 00

Name the evolutionary process models, Normal 0 false false ...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Process destruction, Most process abstractions support processes being dest...

Most process abstractions support processes being destroyed when the program terminates, or in response to a specific kill directive. There are two common implementations, one a "p

Homework, Write an application that does the following:(1) fill an array wi...

Write an application that does the following:(1) fill an array with 50 random integers; (2) loop through the array, displaying each value, and count the number of negative values;

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