7.11. Xgrid Sharing

Xgrid is an Apple technology that lets multiple Macs combine their CPUs to reduce the amount of time it takes to perform computationally intensive tasks. Just as a single Mac may have multiple CPUs or cores that work together as one, an Xgrid setup may have dozens or even thousands of CPUs working in concert. One way of using Xgrid is to configure participating computers to devote their CPU time to a distributed task only when they're idle so that the shared processing doesn't interfere with any local computing tasks.

An Xgrid setup requires three different categories, or roles, of Macs. The controller is the Mac that manages the jobs, sending portions of the processing tasks to the other participating computers and compiling the results. The client is the computer that submits a task to the controller; the client need not actively participate in the processing or even be turned on while the task is being performed. And finally, there are agents — the individual Macs doing the actual work as requested by the client and divvied out by the controller.

Any Mac can be an agent; this requires just a couple of clicks in the Sharing pane of System Preferences (described next). To learn about the process of writing Xgrid-aware software, read Apple's Xgrid programming guide at http://developer.apple.com/mac/library/documentation/MacOSXServer/Conceptual/Xgrid_Programming_Guide/Introduction/Introduction.html. And to get complete details on setting up a controller, submitting ...

Get Mac® Security Bible now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.