Jump to content

Grid computing

From Wikipedia, the free encyclopedia

Grid computingis the use of widely distributedcomputerresourcesto reach a common goal. A computing grid can be thought of as adistributed systemwith non-interactive workloads that involve many files. Grid computing is distinguished from conventional high-performance computing systems such asclustercomputing in that grid computers have each node set to perform a different task/application. Grid computers also tend to be moreheterogeneousand geographically dispersed (thus not physically coupled) than cluster computers.[1]Although a single grid can be dedicated to a particular application, commonly a grid is used for a variety of purposes. Grids are often constructed with general-purpose gridmiddlewaresoftware libraries. Grid sizes can be quite large.[2]

Grids are a form ofdistributed computingcomposed of many networkedloosely coupledcomputers acting together to perform large tasks. For certain applications, distributed or grid computing can be seen as a special type ofparallel computingthat relies on complete computers (with onboard CPUs, storage, power supplies, network interfaces, etc.) connected to acomputer network(private or public) by a conventionalnetwork interface,such asEthernet.This is in contrast to the traditional notion of asupercomputer,which has many processors connected by a local high-speedcomputer bus.This technology has been applied to computationally intensive scientific, mathematical, and academic problems throughvolunteer computing,and it is used in commercial enterprises for such diverse applications asdrug discovery,economic forecasting,seismic analysis,andback officedata processing in support fore-commerceandWeb services.

Grid computing combines computers from multiple administrative domains to reach a common goal,[3]to solve a single task, and may then disappear just as quickly. The size of a grid may vary from small—confined to a network of computer workstations within a corporation, for example—to large, public collaborations across many companies and networks. "The notion of a confined grid may also be known as an intra-nodes cooperation whereas the notion of a larger, wider grid may thus refer to an inter-nodes cooperation".[4]

Coordinating applications on Grids can be a complex task, especially when coordinating the flow of information across distributed computing resources.Grid workflowsystems have been developed as a specialized form of aworkflow management systemdesigned specifically to compose and execute a series of computational or data manipulation steps, or a workflow, in the grid context.

Comparison of grids and conventional supercomputers

[edit]

“Distributed” or “grid” computing in general is a special type ofparallel computingthat relies on complete computers (with onboard CPUs, storage, power supplies, network interfaces, etc.) connected to anetwork(private, public or theInternet) by a conventionalnetwork interfaceproducing commodity hardware, compared to the lower efficiency of designing and constructing a small number of custom supercomputers. The primary performance disadvantage is that the various processors and local storage areas do not have high-speed connections. This arrangement is thus well-suited to applications in which multiple parallel computations can take place independently, without the need to communicate intermediate results between processors.[5]The high-endscalabilityof geographically dispersed grids is generally favorable, due to the low need for connectivity betweennodesrelative to the capacity of the public Internet.[6]

There are also some differences between programming for a supercomputer and programming for a grid computing system. It can be costly and difficult to write programs that can run in the environment of a supercomputer, which may have a custom operating system, or require the program to addressconcurrencyissues. If a problem can be adequately parallelized, a “thin” layer of “grid” infrastructure can allow conventional, standalone programs, given a different part of the same problem, to run on multiple machines. This makes it possible to write and debug on a single conventional machine and eliminates complications due to multiple instances of the same program running in the same sharedmemoryand storage space at the same time.

Design considerations and variations

[edit]

One feature of distributed grids is that they can be formed from computing resources belonging to one or multiple individuals or organizations (known as multipleadministrative domains). This can facilitate commercial transactions, as inutility computing,or make it easier to assemblevolunteer computingnetworks.

One disadvantage of this feature is that the computers which are actually performing the calculations might not be entirely trustworthy. The designers of the system must thus introduce measures to prevent malfunctions or malicious participants from producing false, misleading, or erroneous results, and from using the system as an attack vector. This often involves assigning work randomly to different nodes (presumably with different owners) and checking that at least two different nodes report the same answer for a given work unit. Discrepancies would identify malfunctioning and malicious nodes. However, due to the lack of central control over the hardware, there is no way to guarantee thatnodeswill not drop out of the network at random times. Some nodes (like laptops ordial-upInternet customers) may also be available for computation but not network communications for unpredictable periods. These variations can be accommodated by assigning large work units (thus reducing the need for continuous network connectivity) and reassigning work units when a given node fails to report its results in the expected time.

Another set of what could be termed social compatibility issues in the early days of grid computing related to the goals of grid developers to carry their innovation beyond the original field of high-performance computing and across disciplinary boundaries into new fields, like that of high-energy physics.[7]

The impacts of trust and availability on performance and development difficulty can influence the choice of whether to deploy onto a dedicated cluster, to idle machines internal to the developing organization, or to an open external network of volunteers or contractors. In many cases, the participating nodes must trust the central system not to abuse the access that is being granted, by interfering with the operation of other programs, mangling stored information, transmitting private data, or creating new security holes. Other systems employ measures to reduce the amount of trust “client” nodes must place in the central system such as placing applications in virtual machines.

Public systems or those crossing administrative domains (including different departments in the same organization) often result in the need to run onheterogeneoussystems, using differentoperating systemsandhardware architectures.With many languages, there is a trade-off between investment in software development and the number of platforms that can be supported (and thus the size of the resulting network).Cross-platformlanguages can reduce the need to make this tradeoff, though potentially at the expense of high performance on any givennode(due to run-time interpretation or lack of optimization for the particular platform). Variousmiddlewareprojects have created generic infrastructure to allow diverse scientific and commercial projects to harness a particular associated grid or for the purpose of setting up new grids.BOINCis a common one for various academic projects seeking public volunteers; more are listed at theend of the article.

In fact, the middleware can be seen as a layer between the hardware and the software. On top of the middleware, a number of technical areas have to be considered, and these may or may not be middleware independent. Example areas includeSLAmanagement, Trust, and Security,Virtual organizationmanagement, License Management, Portals and Data Management. These technical areas may be taken care of in a commercial solution, though the cutting edge of each area is often found within specific research projects examining the field.

Market segmentation of the grid computing market

[edit]

For the segmentation of the grid computing market, two perspectives need to be considered: the provider side and the user side:

The provider side

[edit]

The overall grid market comprises several specific markets. These are the grid middleware market, the market for grid-enabled applications, theutility computingmarket, and the software-as-a-service (SaaS) market.

Gridmiddlewareis a specific software product, which enables the sharing of heterogeneous resources, and Virtual Organizations. It is installed and integrated into the existing infrastructure of the involved company or companies and provides a special layer placed among the heterogeneous infrastructure and the specific user applications. Major grid middlewares are Globus Toolkit,gLite,andUNICORE.

Utility computing is referred to as the provision of grid computing and applications as service either as an open grid utility or as a hosting solution for one organization or aVO.Major players in the utility computing market areSun Microsystems,IBM,andHP.

Grid-enabled applications are specific software applications that can utilize grid infrastructure. This is made possible by the use of grid middleware, as pointed out above.

Software as a service(SaaS) is “software that is owned, delivered and managed remotely by one or more providers.” (Gartner2007) Additionally, SaaS applications are based on a single set of common code and data definitions. They are consumed in a one-to-many model, and SaaS uses a Pay As You Go (PAYG) model or a subscription model that is based on usage. Providers of SaaS do not necessarily own the computing resources themselves, which are required to run their SaaS. Therefore, SaaS providers may draw upon the utility computing market. The utility computing market provides computing resources for SaaS providers.

The user side

[edit]

For companies on the demand or user side of the grid computing market, the different segments have significant implications for their IT deployment strategy. The IT deployment strategy as well as the type of IT investments made are relevant aspects for potential grid users and play an important role for grid adoption.

CPU scavenging

[edit]

CPU-scavenging,cycle-scavenging,orshared computingcreates a “grid” from the idle resources in a network of participants (whether worldwide or internal to an organization). Typically, this technique exploits the 'spare'instruction cyclesresulting from the intermittent inactivity that typically occurs at night, during lunch breaks, or even during the (comparatively minuscule, though numerous) moments of idle waiting that modern desktop CPU's experience throughout the day (when the computer is waiting on IO from the user, network, or storage). In practice, participating computers also donate some supporting amount of disk storage space, RAM, and network bandwidth, in addition to raw CPU power.[citation needed]

Manyvolunteer computingprojects, such asBOINC,use the CPU scavenging model. Sincenodesare likely to go "offline" from time to time, as their owners use their resources for their primary purpose, this model must be designed to handle such contingencies.

Creating anOpportunistic Environmentis another implementation of CPU-scavenging where special workload management system harvests the idle desktop computers for compute-intensive jobs, it also refers as Enterprise Desktop Grid (EDG). For instance,HTCondor[8](the open-source high-throughput computing software framework for coarse-grained distributed rationalization of computationally intensive tasks) can be configured to only use desktop machines where the keyboard and mouse are idle to effectively harness wasted CPU power from otherwise idle desktop workstations. Like other full-featured batch systems, HTCondor provides a job queueing mechanism, scheduling policy, priority scheme, resource monitoring, and resource management. It can be used to manage workload on a dedicated cluster of computers as well or it can seamlessly integrate both dedicated resources (rack-mounted clusters) and non-dedicated desktop machines (cycle scavenging) into one computing environment.

History

[edit]

The termgrid computingoriginated in the early 1990s as ametaphorfor making computer power as easy to access as an electricpower grid.The power grid metaphor for accessible computing quickly became canonical whenIan FosterandCarl Kesselmanpublished their seminal work, "The Grid: Blueprint for a new computing infrastructure" (1999). This was preceded by decades by the metaphor ofutility computing(1961): computing as a public utility, analogous to the phone system.[9][10]

CPU scavenging andvolunteer computingwere popularized beginning in 1997 bydistributed.netand later in 1999 bySETI@hometo harness the power of networked PCs worldwide, in order to solve CPU-intensive research problems.[11][12]

The ideas of the grid (including those from distributed computing, object-oriented programming, and Web services) were brought together byIan FosterandSteve Tueckeof theUniversity of Chicago,andCarl Kesselmanof theUniversity of Southern California'sInformation Sciences Institute.[13]The trio, who led the effort to create the Globus Toolkit, is widely regarded as the "fathers of the grid".[14]The toolkit incorporates not just computation management but alsostorage management,security provisioning, data movement, monitoring, and a toolkit for developing additional services based on the same infrastructure, including agreement negotiation, notification mechanisms, trigger services, and information aggregation.[15]While the Globus Toolkit remains the de facto standard for building grid solutions, a number of other tools have been built that answer some subset of services needed to create an enterprise or global grid.[citation needed]

In 2007 the termcloud computingcame into popularity, which is conceptually similar to the canonical Foster definition of grid computing (in terms of computing resources being consumed as electricity is from thepower grid) and earlier utility computing.

Progress

[edit]

In November 2006, Seidel received theSidney Fernbach Awardat the Supercomputing Conference inTampa, Florida.[16]"For outstanding contributions to the development of software for HPC and Grid computing to enable the collaborative numerical investigation of complex problems in physics; in particular, modeling black hole collisions."[17]This award, which is one of the highest honors in computing, was awarded for his achievements in numerical relativity.

Fastest virtual supercomputers

[edit]

Also, as of March 2019, theBitcoin Networkhad a measured computing power equivalent to over 80,000exaFLOPS(Floating-point Operations Per Second).[25]This measurement reflects the number of FLOPS required to equal the hash output of the Bitcoin network rather than its capacity for general floating-point arithmetic operations, since the elements of the Bitcoin network (Bitcoin miningASICs) perform only the specific cryptographic hash computation required by theBitcoinprotocol.

Projects and applications

[edit]

Grid computing offers a way to solveGrand Challenge problemssuch asprotein folding,financialmodeling,earthquakesimulation, andclimate/weathermodeling, and was integral in enabling the Large Hadron Collider at CERN.[26]Grids offer a way of using information technology resources optimally inside an organization. They also provide a means for offering information technology as autilityfor commercial and noncommercial clients, with those clients paying only for what they use, as with electricity or water.

As of October 2016, over 4 million machines running the open-sourceBerkeley Open Infrastructure for Network Computing(BOINC) platform are members of theWorld Community Grid.[19]One of the projects using BOINC isSETI@home,which was using more than 400,000 computers to achieve 0.828TFLOPSas of October 2016. As of October 2016Folding@home,which is not part of BOINC, achieved more than 101 x86-equivalent petaflops on over 110,000 machines.[18]

TheEuropean Unionfunded projects through theframework programmesof theEuropean Commission.BEinGRID(Business Experiments in Grid) was a research project funded by the European Commission[27]as anIntegrated Projectunder theSixth Framework Programme(FP6) sponsorship program. Started on June 1, 2006, the project ran 42 months, until November 2009. The project was coordinated byAtos Origin.According to the project fact sheet, their mission is “to establish effective routes to foster the adoption of grid computing across the EU and to stimulate research into innovative business models using Grid technologies”. To extract best practice and common themes from the experimental implementations, two groups of consultants are analyzing a series of pilots, one technical, one business. The project is significant not only for its long duration but also for its budget, which at 24.8 million Euros, is the largest of any FP6 integrated project. Of this, 15.7 million is provided by the European Commission and the remainder by its 98 contributing partner companies. Since the end of the project, the results of BEinGRID have been taken up and carried forward byIT-Tude.com.

The Enabling Grids for E-sciencE project, based in theEuropean Unionand included sites in Asia and the United States, was a follow-up project to the European DataGrid (EDG) and evolved into theEuropean Grid Infrastructure.This, along with theWorldwide LHC Computing Grid[28](WLCG), was developed to support experiments using theCERNLarge Hadron Collider.A list of active sites participating within WLCG can be found online[29]as can real time monitoring of the EGEE infrastructure.[30]The relevant software and documentation is also publicly accessible.[31]There is speculation that dedicated fiber optic links, such as those installed by CERN to address the WLCG's data-intensive needs, may one day be available to home users thereby providing internet services at speeds up to 10,000 times faster than a traditional broadband connection.[32]TheEuropean Grid Infrastructurehas been also used for other research activities and experiments such as the simulation of oncological clinical trials.[33]

Thedistributed.netproject was started in 1997. TheNASA Advanced Supercomputing facility(NAS) rangenetic algorithmsusing theCondor cycle scavengerrunning on about 350Sun MicrosystemsandSGIworkstations.

In 2001,United Devicesoperated theUnited Devices Cancer Research Projectbased on itsGrid MPproduct, which cycle-scavenges on volunteer PCs connected to the Internet. The project ran on about 3.1 million machines before its close in 2007.[34]

Definitions

[edit]

Today there are many definitions ofgrid computing:

  • In his article “What is the Grid? A Three Point Checklist”,[3]Ian Fosterlists these primary attributes:
  • Plaszczak/Wellner[35]define grid technology as "the technology that enables resource virtualization, on-demand provisioning, and service (resource) sharing between organizations."
  • IBM defines grid computing as “the ability, using a set of open standards and protocols, to gain access to applications and data, processing power, storage capacity and a vast array of other computing resources over the Internet. A grid is a type of parallel and distributed system that enables the sharing, selection, and aggregation of resources distributed across ‘multiple’ administrative domains based on their (resources) availability, capacity, performance, cost and users' quality-of-service requirements”.[36]
  • An earlier example of the notion of computing as the utility was in 1965 by MIT's Fernando Corbató. Corbató and the other designers of the Multics operating system envisioned a computer facility operating “like a power company or water company”.[37]
  • Buyya/Venugopal[38]define grid as "a type of parallel and distributed system that enables the sharing, selection, and aggregation of geographically distributedautonomousresources dynamically at runtime depending on their availability, capability, performance, cost, and users' quality-of-service requirements ".
  • CERN,one of the largest users of grid technology, talk ofThe Grid:“a service for sharing computer power and data storage capacity over theInternet.”[39]

See also

[edit]

List of grid computing projects

[edit]

Alliances and organizations

[edit]

Production grids

[edit]

International projects

[edit]
Name Region Start End
European Grid Infrastructure(EGI) Europe May 2010 Dec 2014
Open Middleware Infrastructure Institute Europe(OMII-Europe) Europe May 2006 May 2008
Enabling Grids for E-sciencE(EGEE, EGEE II and EGEE III) Europe March 2004 April 2010
Grid enabled Remote Instrumentation with Distributed Control and Computation(GridCC) Europe September 2005 September 2008
European Middleware Initiative(EMI) Europe May 2010 active
KnowARC Europe June 2006 November 2009
Nordic Data Grid Facility Scandinavia and Finland June 2006 December 2012
World Community Grid Global November 2004 active
XtreemOS Europe June 2006 (May 2010) ext. to September 2010
OurGrid Brazil December 2004 active

National projects

[edit]

Standards and APIs

[edit]

Monitoring frameworks

[edit]

References

[edit]
  1. ^What is grid computing? - GridcafeArchived2013-02-10 at theWayback Machine.E-sciencecity.org. Retrieved 2013-09-18.
  2. ^"Scale grid computing down to size".NetworkWorld.com. 2003-01-27.Archivedfrom the original on 2023-12-06.Retrieved2015-04-21.
  3. ^ab"What is the Grid? A Three Point Checklist"(PDF).Archived fromthe original(PDF)on 2014-11-22.Retrieved2010-10-21.
  4. ^"Pervasive and Artificial Intelligence Group:: publications [Pervasive and Artificial Intelligence Research Group]".Diuf.unifr.ch. May 18, 2009. Archived fromthe originalon July 7, 2011.RetrievedJuly 29,2010.
  5. ^Computational problems - GridcafeArchived2012-08-25 at theWayback Machine.E-sciencecity.org. Retrieved 2013-09-18.
  6. ^"What is grid computing?".IONOS Digitalguide.Archivedfrom the original on 2022-01-28.Retrieved2022-03-23.
  7. ^Kertcher, Zack; Coslor, Erica (2018-07-10)."Boundary Objects and the Technical Culture Divide: Successful Practices for Voluntary Innovation Teams Crossing Scientific and Professional Fields"(PDF).Journal of Management Inquiry.29:76–91.doi:10.1177/1056492618783875.hdl:11343/212143.ISSN1056-4926.S2CID149911242.Archived(PDF)from the original on 2022-03-28.Retrieved2019-09-18.
  8. ^"HTCondor - Home".research.cs.wisc.edu.Archivedfrom the original on 2 March 2018.Retrieved14 March2018.
  9. ^John McCarthy,speaking at the MIT Centennial in 1961
  10. ^Garfinkel, Simson (1999). Abelson, Hal (ed.).Architects of the Information Society, Thirty-Five Years of the Laboratory for Computer Science at MIT.MIT Press.ISBN978-0-262-07196-3.
  11. ^Anderson, David P; Cobb, Jeff; et al. (November 2002). "SETI@home: an experiment in public-resource computing".Communications of the ACM.45(11): 56–61.doi:10.1145/581571.581573.S2CID15439521.
  12. ^Nouman Durrani, Muhammad; Shamsi, Jawwad A. (March 2014). "Volunteer computing: requirements, challenges, and solutions".Journal of Network and Computer Applications.39:369–380.doi:10.1016/j.jnca.2013.07.006.
  13. ^Johnson, Bridget (2019-11-06)."Grid Computing Pioneer Steve Tuecke Passes Away at 52".Archivedfrom the original on 2022-11-04.Retrieved2022-11-04.
  14. ^"Father of the Grid".Archivedfrom the original on 2012-03-01.Retrieved2007-04-15.
  15. ^Salem, M. (2007).Grid Computing: A New Paradigm for Healthcare Technologies/Applications.Retrieved2022-08-30.
  16. ^"Edward Seidel 2006 Sidney Fernbach Award Recipient".IEEE Computer Society Awards.IEEE Computer Society. Archived fromthe originalon 15 August 2011.Retrieved14 October2011.
  17. ^"Edward Seidel • IEEE Computer Society".www.computer.org.Archived fromthe originalon 15 August 2011.Retrieved14 March2018.
  18. ^abPande lab."Client Statistics by OS".Folding@home.Stanford University.Archivedfrom the original on April 12, 2020.RetrievedMarch 26,2020.
  19. ^ab"BOINCstats – BOINC combined credit overview".Archivedfrom the original on January 22, 2013.RetrievedOctober 30,2016.
  20. ^"SDSC, Wisconsin U IceCube Center Conduct GPU Cloudburst Experiment".SDSC.Archivedfrom the original on September 14, 2022.RetrievedApril 22,2022.
  21. ^"Einstein@Home Credit overview".BOINC.Archivedfrom the original on August 27, 2016.RetrievedOctober 30,2016.
  22. ^"SETI@Home Credit overview".BOINC.Archivedfrom the original on July 3, 2013.RetrievedOctober 30,2016.
  23. ^"MilkyWay@Home Credit overview".BOINC.Archivedfrom the original on May 20, 2012.RetrievedOctober 30,2016.
  24. ^"Internet PrimeNet Server Distributed Computing Technology for the Great Internet Mersenne Prime Search".GIMPS.Archivedfrom the original on May 25, 2019.RetrievedMarch 12,2019.
  25. ^bitcoinwatch.com."Bitcoin Network Statistics".Bitcoin.Archivedfrom the original on January 20, 2023.RetrievedMarch 12,2019.
  26. ^Kertcher, Zack; Venkatraman, Rohan; Coslor, Erica (23 April 2020). "Pleasingly parallel: Early cross-disciplinary work for innovation diffusion across boundaries in grid computing".Journal of Business Research.116:581–594.doi:10.1016/j.jbusres.2020.04.018.hdl:11343/237477.S2CID219048576.
  27. ^"beingrid.eu: Stromkosten Vergleiche -".beingrid.eu: Stromkosten Vergleiche.Archived fromthe originalon 23 July 2011.Retrieved14 March2018.
  28. ^"Welcome to the Worldwide LHC Computing Grid - WLCG".wlcg.web.cern.ch.Archivedfrom the original on 25 July 2018.Retrieved14 March2018.
  29. ^"GStat 2.0 – Summary View – GRID EGEE".Goc.grid.sinica.edu.tw. Archived fromthe originalon March 20, 2008.RetrievedJuly 29,2010.
  30. ^"Real Time Monitor".Gridportal.hep.ph.ic.ac.uk. Archived fromthe originalon December 16, 2009.RetrievedJuly 29,2010.
  31. ^"LCG – Deployment".Lcg.web.cern.ch. Archived fromthe originalon November 17, 2010.RetrievedJuly 29,2010.
  32. ^"The Times & The Sunday Times".thetimes.co.uk.Archivedfrom the original on 25 February 2021.Retrieved14 March2018.
  33. ^Athanaileas, Theodoros; et al. (2011). "Exploiting grid technologies for the simulation of clinical trials: the paradigm of in silico radiation oncology".SIMULATION: Transactions of the Society for Modeling and Simulation International.87(10): 893–910.doi:10.1177/0037549710375437.S2CID206429690.
  34. ^[1]ArchivedApril 7, 2007, at theWayback Machine
  35. ^P Plaszczak, R Wellner,Grid computing,2005, Elsevier/Morgan Kaufmann, San Francisco
  36. ^IBM Solutions Grid for Business Partners: Helping IBM Business Partners to Grid-enable applications for the next phase of e-business on demand
  37. ^Structure of the Multics SupervisorArchived2014-01-16 at theWayback Machine.Multicians.org. Retrieved 2013-09-18.
  38. ^"A Gentle Introduction to Grid Computing and Technologies"(PDF).Archived(PDF)from the original on March 24, 2006.RetrievedMay 6,2005.
  39. ^"The Grid Café – The place for everybody to learn about grid computing".CERN.Archived fromthe originalon December 5, 2008.RetrievedDecember 3,2008.

Bibliography

[edit]