Granularity
Encyclopedia
Granularity is the extent to which a system
System
System is a set of interacting or interdependent components forming an integrated whole....

 is broken down into small parts, either the system itself or its description or observation. It is the "extent to which a larger entity is subdivided. For example, a yard broken into inches has finer granularity than a yard broken into feet."

Coarse-grained systems consist of fewer, larger components than fine-grained systems; a coarse-grained description of a system regards large subcomponents while a fine-grained description regards smaller components of which the larger ones are composed.

The terms granularity, coarse, and fine are relative, used when comparing systems or descriptions of systems. An example of increasingly fine granularity: a list of nations in the United Nations
United Nations
The United Nations is an international organization whose stated aims are facilitating cooperation in international law, international security, economic development, social progress, human rights, and achievement of world peace...

, a list of all states/provinces in those nations, a list of all counties in those states, etc.

The terms fine and coarse are used consistently across fields, but the term granularity itself is not. For example, in investing, more granularity refers to more positions
Position (finance)
In financial trading, a position is a binding commitment to buy or sell a given amount of financial instruments, such as securities, currencies or commodities, for a given price....

 of smaller size, while photographic film
Photographic film
Photographic film is a sheet of plastic coated with an emulsion containing light-sensitive silver halide salts with variable crystal sizes that determine the sensitivity, contrast and resolution of the film...

 that is more granular has fewer and larger chemical "grains".

Physics

A fine-grained description of a system is a detailed, low-level model of it. A coarse-grained description is a model where some of this fine detail has been smoothed over or averaged out. The replacement of a fine-grained description with a lower-resolution coarse-grained model is called coarse graining. (See for example the second law of thermodynamics)

Molecular dynamics

In molecular dynamics
Molecular dynamics
Molecular dynamics is a computer simulation of physical movements of atoms and molecules. The atoms and molecules are allowed to interact for a period of time, giving a view of the motion of the atoms...

, coarse graining consists in replacing an atomistic
description of a biological molecule with a lower-resolution coarse-grained model that averages or smooths away fine details. Coarse-grained models have been developed for investigating the longer time- and length-scale dynamics that are critical to many biological processes, such as lipid membranes and proteins. These concepts may not only apply to biological molecules but also in-organic molecules. Coarse graining may simply remove certain degrees of freedom (e.g. vibrational modes between two atoms) or it may in fact simplify the two atoms completely via a single particle representation. The ends to which systems may be coarse grained is simply bound by the accuracy in the dynamics and structural properties you wish to replicate. This modern area of research is a mere infant and although it is commonly used in biological modeling, the analytic theory behind it is poorly understood.

Computing

In parallel computing
Parallel computing
Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

, granularity means the amount of computation
Computation
Computation is defined as any type of calculation. Also defined as use of computer technology in Information processing.Computation is a process following a well-defined model understood and expressed in an algorithm, protocol, network topology, etc...

 in relation to communication, i.e., the ratio of computation to the amount of communication.

Fine-grained parallelism means individual tasks are relatively small in terms of code size and execution time. The data is transferred among processors frequently in amounts of one or a few memory words. Coarse-grained is the opposite: data are communicated infrequently, after larger amounts of computation.

The finer the granularity, the greater the potential for parallelism and hence speed-up, but the greater the overheads of synchronization and communication.

In order to attain the best parallel performance, the best balance between load and communication overhead needs to be found. If the granularity is too fine, the performance can suffer from the increased communication overhead. On the other side, if the granularity is too coarse, the performance can suffer from load imbalance.

Reconfigurable computing and supercomputing

In reconfigurable computing
Reconfigurable computing
Reconfigurable computing is a computer architecture combining some of the flexibility of software with the high performance of hardware by processing with very flexible high speed computing fabrics like field-programmable gate arrays...

 and in supercomputing these terms refer to the data path width. The use of about one bit wide processing elements like the configurable logic blocks (CLBs) in an FPGA is called fine-grained computing or fine-grained reconfigurability, whereas using wide data paths, such as, for instance 32 bits wide resources, like microprocessor
Microprocessor
A microprocessor incorporates the functions of a computer's central processing unit on a single integrated circuit, or at most a few integrated circuits. It is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and...

 CPUs or data-stream-driven data path units (DPUs) like in a reconfigurable datapath array (rDPA) is called coarse-grained computing coarse-grained reconfigurability.

Data granularity

The granularity of data refers to the fineness with which data fields are sub-divided. For example, a postal address can be recorded, with low granularity, as a single field:
  1. address = 200 2nd Ave. South #358, St. Petersburg, FL 33701-4313 USA


or with high granularity, as multiple fields:
  1. street address = 200 2nd Ave. South #358
  2. city = St. Petersburg
  3. postal code = FL 33701-4313
  4. country = USA


or even higher granularity:
  1. street = 2nd Ave. South
  2. address number = 200
  3. suite/apartment number = #358
  4. city = St. Petersburg
  5. state = FL
  6. postal-code = 33701
  7. postal-code-add-on = 4313
  8. country = USA


Higher granularity has overhead
Computational overhead
In computer science, overhead is generally considered any combination of excess or indirect computation time, memory, bandwidth, or other resources that are required to attain a particular goal...

s for data input and storage. This manifests itself in a higher number of object
Object (computer science)
In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...

s and methods
Method (computer science)
In object-oriented programming, a method is a subroutine associated with a class. Methods define the behavior to be exhibited by instances of the associated class at program run time...

 in the object-oriented programming
Object-oriented programming
Object-oriented programming is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs. Programming techniques may include features such as data abstraction,...

 paradigm or more subroutine
Subroutine
In computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....

 calls for procedural programming
Procedural programming
Procedural programming can sometimes be used as a synonym for imperative programming , but can also refer to a programming paradigm, derived from structured programming, based upon the concept of the procedure call...

 and parallel computing
Parallel computing
Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

 environments. It does however offer benefits in flexibility of data processing in treating each data field in isolation if required. A performance problem caused by excessive granularity may not reveal itself until scalability
Scalability
In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...

 becomes an issue.

Credit portfolio risk management

In credit portfolio risk modeling, granularity refers to the number of the exposures in the portfolio. The higher the granularity, the more positions are in a credit portfolio, providing a higher degree of size diversification, which in turn reduces concentration risk
Concentration risk
Concentration risk is a banking term denoting the overall spread of a bank's outstanding accounts over the number or variety of debtors to whom the bank has lent money. This risk is calculated using a "concentration ratio" which explains what percentage of the outstanding accounts each bank loan...

. This is colloquially known as "not putting all your eggs in one basket".

Photographic film

In photography, granularity is a measure of film grain
Film grain
Film grain or granularity is the random optical texture of processed photographic film due to the presence of small particles of a metallic silver, or dye clouds, developed from silver halide that have received enough photons. While film grain is a function of such particles it is not the same...

. It is measured using a particular standard procedure but in general a larger
number means the grains of silver are larger and there are fewer grains in a given area.

Business

In modern U.S. business lingo, granularity refers to "specificity" or "hierarchical ranking". For example, granularity has been written about in the book, The Granularity of Growth: Making choices that drive enduring company performance. Its authors, Patrick Viguerie, Sven Smit, and Mehrdad Baghai say that there’s a problem with the broad-brush way that many companies describe their business opportunities. They argue that growth opportunities best emerge from a finer-than-usual understanding of market segments, their needs, and the capabilities required to serve them well.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK