Grid computing is a distributed computing system formed by a network of independent computers in multiple locations. Grid computing links disparate, low-cost computers into one large infrastructure, harnessing their unused processing and other compute resources. Unlike high performance computing (HPC) and cluster computing, grid computing can assign a different task to each node. Each computer’s resources – CPUs, GPUs, applications, memory, data storage, etc. – can be shared as community resources. Load-sharing software or middleware evenly distributes tasks to several personal computers and servers on the grid. The nodes run independent tasks and are loosely linked by the Internet or low-speed networks, connecting to the grid directly or via scheduling systems. Grid environments are fault tolerant and have no single point of failure. If one node in the grid fails, many others are available to take over its load.
Grid computing is best suited for applications in which many parallel computations can happen independently, without the need to communicate between processors. Most grid computing projects have no time dependency, and large projects typically deploy across many countries. Some grid projects use the idle power of computers, known as cycle-scavenging, and may run in the background for many weeks. The SETI@home project, a search for extraterrestrial intelligence, is one example of grid computing. Millions of PCs run a search program on a segmented piece of radio telescope data with no set completion date. Other examples of grid computing projects include genetics research, drug design, geophysical prospecting, mechanical engineering, movie special effects, financial analytics and cancer research.
Grid computing may not be used for traditional business applications due to its lack of end-to-end security and usage metering, plus concerns about licensing, privacy, reliability and latency. Government, scientific and financial organizations utilize grid computing for massive computational projects because it makes efficient use of idle computer resources, such as servers and desktops that are not used after business hours. Using IP-based networks, a grid can link hundreds or thousands of inexpensive computers, sharing resources over diverse operating systems such as Linux, Solaris, UNIX and Windows. Many SUSE Linux partners offer HPC, clustering and grid computing solutions for more efficient processing power.