In: Computer Science
Explain Three types of Granularity?
Coarser, Medium and Fine
Granularity of a task is the measure of the work performed by the task. It is measured in the terms of number of instruction executed in that task.
Granularity= Computation time/ communication time
Depending upon the amount of work performed, it can be classified into 3 types-
1. Fine Granularity- In this, a program is broken down into a large number of small tasks. Then, these small tasks are assigned individually to multiple processors. The work is evenly distributed among the processors. The number of processors required here is high. This increases the communication and synchronization overhead. One of the example of fine grained system is the system of neurons in our brain.
2. Coarse Granularity- In this, a program is divided into large tasks. Because of this, a large amount of computation takes place in processors which might lead in load imbalance. In load imbalance, certain tasks process majority of data while others will be idle. There will be low communication and synchronization overhead in coarse granularity. One of the example of coarse granularity is Cray Y-MP.
3. Medium Granularity- In this, task size and communication time is greater than fine granularity and lower than coarse granularity. It is used relatively to fine granularity and coarse granularity. One of the example of medium granularity is Intel iPSC.