Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Xgrid

This is a good article. Click here for more information.
From Wikipedia, the free encyclopedia
Distributed computing protocol created by Apple

Xgrid
DeveloperApple Inc.
Initial releaseJanuary 6, 2004[1]
Final release
10.7.5 / October 4, 2012; 13 years ago (2012-10-04)
Operating systemMac OS X
PlatformIndependent
TypeDistributed computing
LicenseProprietaryEULA[2]
WebsiteHomepage at theWayback Machine (archived January 2, 2006)

Xgrid is a proprietarygrid computing program and protocol developed by the Advanced Computation Group subdivision ofApple Inc.[3]

It providesnetwork administrators a method of creating acomputing cluster, which allows them to exploit previously unused computational power for calculations that can be divided easily into smaller operations, such asMandelbrot maps. The setup of an Xgrid cluster can be achieved at next to no cost, as Xgrid client is pre-installed on all computers runningMac OS X 10.4 toMac OS X 10.7. The Xgrid client was not included inMac OS X 10.8. The Xgrid controller, thejob scheduler of the Xgrid operation, is also included withinMac OS X Server and as a free download from Apple. Apple has kept the command-line job control mechanism minimalist while providing an API to develop more sophisticated tools built around it.

The program employs its own communicationprotocol layered on top of a schema to communicate to other nodes. This communication protocol interfaces with theBEEP infrastructure, a network application protocolframework. Computers discovered by the Xgrid system, that is computers with Mac OS X's Xgrid service enabled, are automatically added to the list of available computers to use for processing tasks.

When the initiating computer sends the complete instructions, orjob, for processing to thecontroller, the controller splits the task up into these smallinstruction packets, known astasks. The design of the Xgrid system consists of these small packets being transferred to all the Xgrid-enabled computers on the network. These computers, ornodes,execute the instructions provided by the controller and then return the results. The controller assembles the individual task results into the whole job results and returns them to the initiating computer.

Apple modeled the design of Xgrid on the Zilla program, distributed withNeXT'sOpenStep operating system application programming interface (API), which Apple owned the rights to. The company also opted to provide the client version of Mac OS X with only command-line functions and little flexibility, while giving theMac OS X Server version of Xgrid aGUI control panel and a full set of features.

History

[edit]
Zilla

Xgrid's origins can be traced back toNeXT's Zilla application created by scientistRichard Crandall in the late 1980s. Zilla was the first distributed computing program released on anend-user operating system and which used the idle screen-saver motif, a design feature since found in widely used projects such asSeti@Home.[1][4] Zilla won the nationalComputerworld Smithsonian Award (Science Category) in 1991 for ease of use and good design.[5] Apple acquired Zilla along with the rest of NeXT in 1997,[6] and used Zilla as inspiration for Xgrid.[1] Xgrid Technology Preview 1 was released in January 2004,[7][3][8] followed by Technology Preview 2 in November 2004. Xgrid 1.0 was released as part ofMac OS X 10.4 Tiger in April 2005.[8]

Several organizations have adopted Xgrid in large international computing networks. One example of an Xgrid cluster is MacResearch's OpenMacGrid, where scientists can request access to large amounts of processing power to run tasks related to their research.[9][10] Another was the now defunct Xgrid@Stanford project, which used a range of computers on theStanford University campus and around the world[11] to perform biochemical research.[12][13][14]

In a report covering the announcement,Macworld cited Xgrid among theUnix features in "10 Things to Know about Tiger", calling it "handy if you work with huge amounts of experimental data or render complex animations".[15] After Xgrid's introduction in 2004,InfoWorld noted that it was a "'preview' grade technology" which would directly benefit from theXserve G5's launch later that year.[16]InfoWorld commentator Ephraim Schwartz also predicted that Xgrid was an opening move in Apple's entry into the enterprise computing market.[17][8]

Apple discontinued Xgrid withOS X 10.8 Mountain Lion,[18] along with dependent services such as Podcast Producer.[19][20]

Protocol

[edit]
Xgrid Protocol

The Xgrid protocol uses the BEEP network framework to communicate with nodes on the network. The system's infrastructure includes three types of computers which communicate over the protocol:

  • The client, which submitscalculation jobs to the controller
  • The controller, whichsegregates the jobs into tasks, and assigns these tasks to agents
  • The agents, which process their own allocated part of the calculation and return results to the controller, which returns them to the client.[21][8]

A computer can act as one or all three of these components at the same time. The Xgrid protocol provides the basic infrastructure for computers tocommunicate, but is not involved in the processing of the specified calculation.[22] Xgrid is targeted towards time-consuming computations that can be easily segregated into smaller tasks, sometimes calledembarrassingly parallel tasks.[23] This includesMonte Carlo calculations,3D rendering andMandelbrot maps.[22]

Within the Xgrid protocol, three types ofmessages can be passed to other computers on the samecluster: requests,notifications and replies. Requests must be responded to by the recipient with a reply, notifications do not require a reply, and replies are responses to sent messages. They are identified by theirname, type (request/notification/reply) and contents. Each message is encapsulated in a BEEP message (BEEP MSG) and is acknowledged on receipt by an empty reply (RPY).[7] Xgrid does not leverage BEEPs message/reply infrastructure. Any received message which requires a response merely generates an independent BEEP message containing the reply. The Xgrid messages are encoded as dictionaries of key/value pairs which are converted to XML before being sent across the BEEP network.

Architecture

[edit]

The architecture of the Xgrid system is designed around a job based system; the controller sends agents jobs, and the agents return the responses. The actual computation that the controller executes in an Xgrid system is known as a job. The job contains all the files required to complete the task successfully, such as the inputparameters,data files,directories,executables and/orshell scripts, the files included in an Xgrid job must be able to be executed either simultaneously or asynchronously, or any benefits of running such a job on an Xgrid is lost. Once the job completes, the controller can be set to notify the client of the task's completion or failure, for example byemail. The client can leave thenetwork while the tasks are running. It can also monitor the job status on demand byquerying the controller, although it cannot track the ongoing progress of individual tasks.[24][8]

The controller is central to the correct function of an Xgrid, as this node is responsible for the distribution, supervision and coordination of tasks on agents. The program running on the controller can assign and reassign tasks to handle individual agent failures on demand. The number of tasks assigned to an agent depend on two factors: the number of agents on an Xgrid and the number ofprocessors in each node. The number of agents on an Xgrid determines how the controller will assign tasks. The tasks may be assigned simultaneously for a large number of agents, or queued for a small number of agents. When a node with more than one processor is detected on an Xgrid, the controller may assign one task per processor; this only occurs if the number of agents on the network is lower than the number of tasks the controller has to complete.[24]

Xgrid is layered upon the Blocks Extensible Exchange Protocol (BEEP), anIETF standard comparable toHTTP, but with a focus on two-way multiplexed communication, such as that found inpeer-to-peer networks. BEEP, in turn, usesXML to define profiles for communicating between multiple agents over a single network or internet connection.[25]

Xgrid agent software was available forUnix andLinux systems.[26]

Interface

[edit]
Xgrid administration tool

While it is possible to access Xgrid from the command line, the Xgrid graphical user interface, a program bundled withMac OS X Server and, as of March 2009, available online, is a much more efficient way of administering an Xgrid system. Originally, the Xgrid agent was included in allMac OS X 10.4 Tiger installations but the GUI was reserved for users ofMac OS X Server. This decision limited the efforts of the computer community to embrace the platform. Eventually, Apple released the Mac OS X Server Administration Tools to the public, which included the Xgrid administration application bundled with Mac OS X Server.[27]

Despite the lack of a graphical controller interface in the standard (non-server)Mac OS X distribution, it is possible to set up an Xgrid controller via thecommand line toolsxgridctl andxgrid. Once the Xgrid controllerdaemon is running, administration of the grid with Apple'sXgrid Admin tool is possible.[27] Some applications, such asVisualHub, provided Xgrid controller capability through their user interfaces.[28][29]

See also

[edit]

Notes

[edit]
  1. ^abc"Mac OS X Manual Page For xgrid(1)".Apple Inc. June 27, 2007. Archived fromthe original on July 25, 2008. RetrievedJuly 25, 2008.
  2. ^"Mac OS X 10.5 SLA"(PDF).Apple Inc. March 9, 2005. Archived fromthe original(PDF) on May 12, 2008. RetrievedJune 12, 2008.
  3. ^abCohen, Peter (March 29, 2004)."Apple posts Xgrid intro".Macworld.Archived from the original on October 6, 2022. RetrievedMay 14, 2023.
  4. ^Norbury-Glaser, Mary (2006)."Build Your Own Supercomputer From Your Macs Laying Around: How to employ Tiger's Xgrid to build clusters and to contribute to grid/cluster projects".MacTech. Vol. 22, no. 1.Archived from the original on May 14, 2023. RetrievedMay 14, 2023.
  5. ^"Zilla - Computerworld Honours Program Archives". Archived fromthe original on July 16, 2011. RetrievedFebruary 27, 2009.
  6. ^Schlender, Brent; Tetzeli, Rick (2015).Becoming Steve Jobs: The Evolution of a Reckless Upstart into a Visionary Leader.Crown Business. pp. 190–197.ISBN 978-0-7710-7914-6.
  7. ^abCôté, Daniel (June 21, 2004)."XGrid agent for Unix architectures". Simple. Archived fromthe original on March 10, 2008. RetrievedJuly 18, 2008.
  8. ^abcdeHughes, Baden (2006).Building computational grids with Apple's Xgrid Middleware. Fourth Australasian Symposium on Grid Computing and e-Research (AusGrid 2006) and the Fourth Australasian Information Security Workshop (AISW 2006).doi:10.1145/1151828.1151835 (inactive July 12, 2025).{{cite conference}}: CS1 maint: DOI inactive as of July 2025 (link)
  9. ^Martellaro, John (February 13, 2007)."OpenMacGrid Computing Grid for Mac Users Announced".The Mac Observer.Archived from the original on August 30, 2008. RetrievedMarch 1, 2009.
  10. ^Saunders, Grover (February 12, 2007)."OpenMacGrid creates distributed computing love-fest".Ars Technica.Archived from the original on August 24, 2009. RetrievedMarch 1, 2009.
  11. ^Parnot, Charles (December 3, 2007)."Xgrid@Stanford - Home".Stanford University. Archived fromthe original on October 10, 2014. RetrievedJuly 25, 2008.
  12. ^Parnot, Charles (December 3, 2007)."Xgrid@Stanford - Projects".Stanford University. Archived fromthe original on September 26, 2011. RetrievedJuly 25, 2008.
  13. ^Zhuge, Hai; Fox, Geoffrey C. (November 24, 2005).Grid and Cooperative Computing - GCC 2005: 4th International Conference, Beijing, China, November 30 -- December 3, 2005, Proceedings. Springer Science & Business Media. p. 408.ISBN 978-3-540-30510-1.
  14. ^Rizzo, John (September 23, 2011).Mac OS X Lion Server For Dummies. John Wiley & Sons.ISBN 978-1-118-17748-8.
  15. ^Michaels, Philip; Griffiths, Rob; Snell, Jason; Seff, Jonathan (September 2004)."10 Things to Know about Tiger".Macworld. Vol. 21, no. 9. pp. 50–55.ISSN 0741-8647. RetrievedOctober 16, 2008. (Subscription required)
  16. ^Connolly, P.J. (June 21, 2004). "Apple's Xserve Hardware Makes Waves".InfoWorld. Vol. 26, no. 25. pp. 29–30.ProQuest 194358336. (Subscription required)
  17. ^Schwartz, Ephraim (January 26, 2004). "Doth Apple Protest Too Much?".InfoWorld. Vol. 26, no. 4. p. 12.ProQuest 194347451. (Subscription required)
  18. ^Pogue, David (July 25, 2012).OS X Mountain Lion: The Missing Manual. O'Reilly Media. p. 2.ISBN 978-1-4493-4367-5.
  19. ^Rizzo, John (August 31, 2012).OS X Mountain Lion Server For Dummies. John Wiley & Sons. pp. 76–77.ISBN 978-1-118-41781-2.Archived from the original on November 8, 2021. RetrievedMay 16, 2023.
  20. ^Rizzo, John (September 23, 2011). "What's in Podcast Producer?".Mac OS X Lion Server For Dummies. John Wiley & Sons.ISBN 978-1-118-17748-8.
  21. ^Zhuge, Hai; Fox, Geoffrey C. (November 24, 2005).Grid and Cooperative Computing - GCC 2005: 4th International Conference, Beijing, China, November 30 -- December 3, 2005, Proceedings. Springer Science & Business Media.ISBN 978-3-540-30510-1.
  22. ^abCôté, Daniel (January 7, 2004)."XGrid". Simple. Archived fromthe original on April 12, 2008. RetrievedJuly 18, 2008.
  23. ^Gulker, Chris (January 15, 2004)."Xgrid: Grid computing for the rest of us?".Linux.com.Archived from the original on November 20, 2008. RetrievedJuly 26, 2008.
  24. ^ab"Xgrid Programming Guide: How It Works".Apple Inc. October 31, 2007. RetrievedJune 12, 2008.
  25. ^"Mac OS X Server: Xgrid"(PDF).Technology Brief. Apple Inc. November 1, 2007. p. 2.Archived(PDF) from the original on March 19, 2009. RetrievedMarch 1, 2009.
  26. ^Jepson, Brian; Rothman, Ernest E. (June 1, 2005).Mac OS X Tiger for Unix Geeks. O'Reilly Media. p. 211.ISBN 978-0-596-55274-9.
  27. ^abMuir, Dylan (June 23, 2005)."10.4: Run an Xgrid with Tiger client".Mac OS X Hints. Archived fromthe original on August 24, 2007. RetrievedJuly 26, 2008.
  28. ^"VisualHub offers Xgrid support". MacNN. June 7, 2006. Archived fromthe original on December 9, 2017. RetrievedJuly 26, 2008.
  29. ^Chartier, David (June 7, 2006)."VisualHub - The universal video converter".Engadget. RetrievedMay 14, 2023.

Further reading

[edit]
Versions
Mac OS X
OS X
macOS
Predecessors
Applications
Core
applications
Developer
Tools
Xcode
Former
Former
Utilities
Discontinued
Technologies,
user interface
Deprecated
Discontinued
  • Italics denote upcoming products.
  •  Category
Services
Applications
Related

Retrieved from "https://en.wikipedia.org/w/index.php?title=Xgrid&oldid=1300157145"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp