Slashdot Mirror


Xgrid Clustering Software and Demo

no_demons writes "Along with a selection of other goodies, Apple also unveiled their Xgrid clustering technology from their advanced computation group today. Xgrid can turn a number of networked Macs into a supercomputer, detects nodes automagically via Rendezvous, and can run in or out of a screensaver mode. You can download a technology demo (including a BLAST test app) here."

30 of 290 comments (clear)

  1. small scale? by SHEENmaster · · Score: 4, Interesting

    Does this work on the small scale as well, like OpenMOSIX? We have a few G4's at school that could benifit from clustering.

    --
    You can't judge a book by the way it wears its hair.
    1. Re:small scale? by bprice20 · · Score: 2, Interesting

      Have you actually run any jobs on your cluster yet? download john the ripper from http://www.openwall.com/john/ compile it and run "./john --test. I would LOVE to see the numbers using just the powoerbook in relation to the numers you get on the cluster. PLZ post back.

  2. Sounds good, but... by moehoward · · Score: 3, Interesting

    What's the cost? I can't find any info on pricing, etc. Sounds like a great product if it works as advertised.

    But for me, the model I want is a broker model. I want to sell my processor time to a broker who will resell it on a day to day basis to whoever is the highest bidder. E-bay of grid computing, ya know. I don't want to pick projects, download clients, etc. I just want to pariticipate (i.e. make money) from whoever is willing to pay the most at any given moment.

    And when I feel like it, I'll volunteer x% to non-commericial stuff like SETI@home.

    --
    "If you want to improve, be content to be thought foolish and stupid." - Epictetus
    1. Re:Sounds good, but... by proverbialcow · · Score: 2, Interesting

      Several companies tried this back in 2001 and discovered that the processor time on your computer is worth less than the overhead cost of using it. Sorry.

      Well, sure, it's worth less to companies who are looking to save money in the process or your average 'netizen, who thinks it should be free by divine right). Now if you implemented it with something akin to Mojo so that contributors to the grid could eventually use the grid for their own purposes, that's a different story.
      For example, Apple or IBM (who are rumored to place great faith in the future of grid computing) releases a freeware client for users to exchange CPU downtime for, oh, let's call it "Whuffie." (Sorry, Cory Doctorow) Joe Beigebox wants to render a stunning 3-D scene, but lacks the processing power to do it before the heat death of the Universe. He can buy time on the grid by donating his computer's copious downtime to the Grid, earns 10,000 Whuffie, and renders the picture overnight.

      Of course, that's just my opinion. I could be off on a rant.

      --
      The only surefire protection against Microsoft infections is abstinence. - The Onion
    2. Re:Sounds good, but... by NightSpots · · Score: 2, Interesting

      Uh, someone forgot to tell United Devices.

      The corporation is intimately tied to distributed.net and has been selling distributed / Grid computing to corporations for YEARS.

    3. Re:Sounds good, but... by laird · · Score: 2, Interesting

      In theory, distributing computing is an amazing resource -- most computers are 99% unused (2.4 GHz CPU waiting for the user to hit the next keystroke...). But it's very, very hard to actually take advantage of it.

      The problem isn't so much that the compute time isn't valuable as that there are relatively few problems that are amenable to this style of distibuted computing.

      There are two axis that I believe need to work out: the value of solving the problem (and to whom), and how parallelizable it is.

      In terms of value, if a problem is really valuable to me to solve, it's worth the expense of setting my your own compute farm, where you can guarantee results. If it's really not worth anything to solve, then nobody will bother actually solving it. So distributed computing only works for problems that are pretty important to solve, but not important enough to spend a lot of money on.

      Even more of an issue, the problem has to be one that is amenable to loosely coupled parallel systems. That means that I have to be able to chop my problem up into chunks of extremely compute intensive work that can be performed with no communication between nodes (i.e. not like 99.9% of the code most people write), and I can accept all of the issues related to the nodes being completely unpredictable. So if a node never completes the work and submits the results, I have to re-assign the work to another node eventually. And if I don't trust the client nodes, I might have to have multiple nodes do the same job so that I can compare answers. And, of course, I can't even predict the number of available nodes. And security is out the window, since I'm shipping my data and code to random volunteers.

      Among other things, this all means that I can't use distributed computing to solve problems where I need to know the answer in a predictable amount of time. So, for example, if I'm producing a movie and need to render tons of graphics (and problem which parallelized very nicely) I'm probably better off buying a rendering farm than trying to use a distributed network to solve it, because it's _very_ important to me to know when the movie will be rendered, and foolist of me to try to save $500K in hardware in a $50M movie budget in return for the risks.

      And, of course, the vast majority of problems that people want to solve are hard to parallelize. Not that it couldn't be done with sufficient cleverness, perhaps, but very few engineers can design and implement distributed systems that work well. This makes it a wonderfully challenging field to work in, but a terrible one to sell -- most corporations' problems don't fit the distributed computing model.

      That being said, I don't mean to be completely negative -- I'm a huge fan of parallel computing; I worked for Thinking Machines back in the day. There are certainly many cases where distributed computing works. SETI is a pretty obvious succes -- it parallelizes perfectly, is a very interesting problem to solve, but has no actual funding, so the only way to solve it is to use volunteered spare cycles. Or if I'm making a computer graphic movie but have no money -- you can get people to volunteer computer time in return for non-monetary rewards (the ego boost of seeing your name in a movie's credits, etc.). And distributed compilation is a wonderful thing.

  3. Why limit this.. by jaxdahl · · Score: 3, Interesting

    Why limit this to Macs only? Wouldn't this work even better if it were cross-platform -- like many other distributed computing solutions such as SETI, distributed.net, and the UD Cancer projects.

    1. Re:Why limit this.. by laird · · Score: 5, Interesting

      "However when you can pick up Dell or Sun machines cheaper and more powerful than Xserve cluster nodes, it's more tempting to me to put a little effort into getting each one up & running as a node and enjoy the benefit of more power and a little effort, than simplicity and less power."

      This might make sense except that Dell and Sun servers are slower and more expensive than Apple's. Unless you're talking about buying used servers on eBay or something, I suppose. But if you want scientific supercomputing floating point number crunching, the G5 is amazingly good...

    2. Re:Why limit this.. by schwatoo · · Score: 2, Interesting

      Also if you install XGrid or just extract the parts from the installer package using Pacifist there's a nice little Objective-C BEEP.framework with headers and comments and everything! I think this is the first Objective-C BEEP framework on Mac OS X. It would be nice if Apple made this part of Darwin. More info here

      --
      I have trouble with passwords among other things.
  4. Re:super computing by falcon5768 · · Score: 3, Interesting
    (rolls eyes, knew this was going to be said)

    when the G4 was out the concept of a supercomputer was still the old how many gigaflops it ran, at that point the G4 was considered a supercomputer because it had just broken the old gigaflop barrier.

    but with that Apple while advertising it was a supercomputer secretly wanted that concept to change cause it ment they couldnt sell the computer to a LOT of different countries due to export laws and supercomputers (the same thing happpened with Japan and the PS2 I think, or it might have been a urban legend in that case) Intel and AMD where also in on it since their chips ALSO where breaking the gigaflop barrier and where technically classified as "supercomputers" based on old 70's classifications.

    Since then the rulling was changed and it will be a long time before any of the makers will reach the current mark with a one or two prosessor machine.

    Now in Virginias case, it really IS a supercomputer, actually the third fastest at this point and THE fastest educational supercomputer

    before I think the G4 was like 6 or 7 gigaherz slower than the closest "true" supercomputer

    --

    "Slashdot, where telling the truth is overrated but lying is insightful."

  5. Anything similar for Linux? by costas · · Score: 2, Interesting

    It's been a while since I played with Beowulf clusters, but I've been thinking of using a Beo-class cluster in an enterprise app. The problem there is that you want the IT people to have to do as little "deep magic" work as possible when it comes to grids. So, auto-detection of new nodes, transfer of jobs out of failing/crashed nodes, etc. are important features. Is there anything close to that for Linux? a few different solutions that integrate well together isn't out of the question either...

  6. Been there, done that, Apple bought me lunch. by antarctican · · Score: 4, Interesting

    Oh good, you mean I can actually talk about XGrid now after signing an NDA over 6 months ago? :)

    We had the second installation of XGrid, the only other group using it at the time was NASA. I haven't had much time to play with it personally but we had our coop do some genetic sequence analysis using it and he was quite impressed. Plus the speedometer-like gauge measuring performance just looks soooo cool. ;)

    1. Re:Been there, done that, Apple bought me lunch. by buckhead_buddy · · Score: 4, Interesting

      Back when Spindler ruled as Steward of Apple (well before the return of Jobs), I signed an NDA for an evaluation period with a piece of Apple hardware that was supposedly about 10-12 months from release.

      The specs of the machine have been outclassed by modern standards, and the neat software features not made irrelevant by Mac OS X have surfaced in Mac OS X Server. But there were two very cool things about the case though that I thought were of the "Geez, that seems so obviously handy!" variety.

      The gotcha was that it has never been released. I keep expecting new Mac hardware to one day come out with these two features but until that time I guess I'm still under NDA. Arrggghhhh!!!!!

      Be glad your NDA expired with the release of the product. Otherwise you'd be burning with the image of that cool speedometer in your mind and unable to tell anyone about it. :-)

    2. Re:Been there, done that, Apple bought me lunch. by laird · · Score: 4, Interesting

      Wow, usually NDA's are released either when the info becomes public knowledge OR after three years (or whatever). Lawyers never let me sign any contract that doesn't have an expiration date, because it means that they'll have to worry about it forever...

  7. db solutions? by tobes · · Score: 3, Interesting

    I don't know much about clustering, but maybe someone can fill me in. Would it be possible to run something like Postgres on a cluster of XServes? Would the clustering be transparent at the application level, so that any program could take advantage of the clustered resources or would specific distributed algorithm apps need to be written?

    I'm hoping that I could just get a stack of XServes and run an OSS db on it for free (as in no extra effort required), but I'm guessing that's not the way it works.

  8. Re:Will it work on legacy machines? by Anonymous Coward · · Score: 1, Interesting

    I feel like a complete ass right now, but it's worth saying ...

    I wrote VERY similar software last year (before I even knew XGrid was planned) that used Rendezvous/zeroconf to do distributed computing/grid computing that worked on FreeBSD and (at the very least) compiled cleanly on Linux. I was convinced at the time that nobody would ever use it, because things like shared library dependencies make normal computing such a bitch that trying to solve those issues in these types of scenarios would be just silly... so I stopped working on it short of actually releasing the code.

    If I find the code in the next few hours, I'll post another comment. I fear that it's entirely lost, due to unrelated stupidity.

  9. Apple vs Microsoft by Archangel+Michael · · Score: 3, Interesting

    Here is another wonderful example of Apple beating Microsoft on more than one level.

    1. Over all Coolness AND Geek Factors.
    2. Usefulness of coolness factor.
    3. Ease of use of Geek factor.

    Microsoft hasn't done anything remotely like this in thier existance, rarely do they push the tech envelope beyond the what has become ordinary and benign. And when they do, they end up with over analized and engineered products nobody want (Bob?).

    Apple of the otherhand is OFTEN making stuff WAY before the curve. Newton/PDA, USB/Firewire, CDROMs, Floppylessness (is that a word), standard networking .......... and now Beowolf clustering out of the BOX!!!

    If Apple is smart with this, they could play against the new model of "ON DEMAND" services from companies like IBM.

    Imagine a corporation that could automatically timeshare, timeshift computing resources based on such technology using the workstations they currently own/purchase. Peak periods of processing could be syphoned from little or unused desktops "On Demand", back filling any need left over from the DP center.

    If this is NOT revolutionary it will be at least evolutionary.

    --
    Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    1. Re:Apple vs Microsoft by KrispyKringle · · Score: 3, Interesting
      While you are probably right, what is truly interesting about this is that it's Apple who are doing it.

      Microsoft, for all their research, always seem to have a ``me, too'' attitude. Their entire business approach (which is certainly highly successful in many ways) is essentially to jump into every possible market (gaming consoles, consumer electronics, embedded devices, low-end servers, enterprise computing, web application infrastructure, clustering, etc) with the hope of, if not succeeding, at least driving out potential competitors from succeeding instead.

      Apple, on the other hand, has seemingly ignored anything but their established market of home users and graphic artists, video editors, and the like for a long, long time. I have never even seen an Xserve in use, neat as they seem to be. They've made no real headway in commercial environments (other than ad agencies and the like), either as workstations or as PCs.

      And yet, here we have a product (for which a market may or may not really exist) which falls far outside Apple's traditional domain, but which seems to be clearly innovative. Where Microsoft only seems to promote technologies that it sees other companies already engaged in, Apple pioneers something somewhat more risky. Microsoft's model is probably more successful. But that may not be the point.

  10. Re:super computing by Trurl's+Machine · · Score: 3, Interesting

    The whole point of the ban on export of supercomputers was that they could be used to simulate nuclear explosions

    Not exactly, it was also their usage in brute-force decryption. The former point was indeed emphasized in the days of the old Cray supercomputer, but the latter was stressed as the most important factor in mid 1990's, when the aging cold war COCOM was replaced by the Wassenaar Agreement.

  11. Re:mini me super cluster... by antarctican · · Score: 3, Interesting

    I wonder how long it will take someone at MIT or some other tech university to figure out if I put all the Macs located on or around a college campus I could or University could make it's self a mini-Super Computer for very few dollars.

    We did this 6 months ago when we were first beta testing XGrid. I never had the opportunity to personally play with it, but a grid of a hundred EMacs was a pretty good start to a mini-supercomputer I was told. :)

  12. batch queueing by tolldog · · Score: 3, Interesting

    Isn't this just a batch queueing system, much like Sun's Grid computing, Platform's LSF and the like.

    If it is, it is different in nature than the often joked about beowulf clusters and the mosix systems.

    I think its great that Apple has one too, the more ideas thrown into the pot, the better all of them become.

    -Tim

    --
    -I just work here... how am I supposed to know?
  13. So what happens... by kaoshin · · Score: 1, Interesting

    To the rest of the bunch when one of the apples goes bad? *rimshot*

    Seriously though, I would have seen this as bigger news if it would be possible to afford more than one apple on my wages. Anyway, I figure this would be an appropriate thread to rant about my friend. He's always hounding me about how hot the macs are in the studio, and that they use protools on these mac servers and trying to explain to me what "better quality" audio they produce, and how all the studios are using macs now.....

  14. Re:Will it work on legacy machines? by BWJones · · Score: 2, Interesting

    You should check out Pooch from Dean Dauger. He has adopted OS X for obvious reasons but older versions of Pooch ran on MacOS 9.

    Pooch was the original easy to use and implement solution for clustering Macs used originally at UCLA for physics modeling.

    --
    Visit Jonesblog and say hello.
  15. ifdef Win32 at Apple? by G3ckoG33k · · Score: 3, Interesting

    A code snippet from here(!) reads:

    #ifdef _WIN32
    #pragma warning( disable : 4127 4706 ) /* disable conditional is constant warning */
    #endif


    Why would developers at Apple ifdef for Win32?!

  16. Re:Competitive with Linux clustering? by glinden · · Score: 2, Interesting

    Are they? A G5 server starts at $3000. A high powered Linux server is about $1000, and you can get a low end Linux server for a couple hundred dollars.

    It's pretty well accepted that Apple charges a premium for their products. They're well designed, so sometimes it's worth it, but it seems hard to justify it for something like a server farm where design doesn't matter much.

  17. What it's not by harywilke · · Score: 3, Interesting

    From Apples Website: http://www.apple.com/acg/ Xgrid Xgrid clustering software is intended primarily for scientific researchers who have a set of networked computers that are not yet being used to full collective CPU potential. The software provides a remote execution environment and file staging abilities that coordinate the running of tasks on distributed computing resources and ensure that each computer has access to all of the files necessary to execute the tasks, thus freeing both user and developer of such resources from this tedious work. Xgrid does not solve all clustering problems. It does not replace clustering software such as MPI or clustering hardware such as InfiniBand. Xgrid does not accelerate or "grid-enable" existing applications on your computer. For an application to take advantage of the Xgrid technology, you must update it to use the Xgrid APIs. However, if you currently run long computations in your Terminal windows using, say, an already-compiled executable, you should be able to use Xgrid out of the box to run batch jobs for this executable on your clusters. In this way Xgrid offers high-throughput computing with minimal development work on your part.

  18. Re:Will it work on legacy machines? by ActionPlant · · Score: 3, Interesting

    Considering the kernel for which Xgrid was written, though, is it unreasonable to consider that a person might be able to work with a custom, stripped down compile of BSD? Granted, there would have to be a few necessary X modules, but what I'm wondering is if a person would have to go your route (writing the trick bios, etc.) or if it would be easier just to start with BSD and build from scratch?

    Damon,

    --
    http://actionPlant.com
  19. Re:Cluster computing 102? by Maserati · · Score: 3, Interesting

    The guys at Genentech must be having heart spasms today. They do a lot of Altivec-optimised calculations, and between XGrid and the G5 XServes they're in hog heaven right now. Any Mac-equipped research facility is now sitting on an extra supercomputer they don't have to pay for.

    Imagine that, an extra supercomputer.

    Lockheed and Boeing are excited. Everyone in biotech is going nuts. Everybody's IT department should be thinking: what could we do with a crapload of extra CPU ?

    --
    Veteran, Bermuda Triangle Expeditionary Force, 1992-1951
  20. Re:Hey Colleges: Computer Labs = SuperComputers by KrispyKringle · · Score: 2, Interesting
    In a limited environment, it makes sense, but not campus-wide. For example, I know of a neuroscience lab which has a Linux computer lab where MRI data (which takes up terabytes) is stored on networked RAID arrays, and the actual processing is done by the Linux workstations.

    But to do it campus-wide makes many admins very very nervous; the cost of maintainance and upkeep may in fact rise, and even if the secretaries aren't using their P4's with hyperthreading most of the time, the admins don't want the hassle of keeping them running for the secretaries and running the distributed software at the same time (I've seen proposals to do this, and seen the results). I personally think it makes a great idea, but usually--since those proposing it tend not to be the first and second-tier support providers--it gets shot down.

  21. First impressions by h3 · · Score: 3, Interesting

    Coincidentally, I was working on setting up Sun Grid Engine on a couple of G5s here at work yesterday when I heard the news about XGrid. I dropped my work on SGE immediately.

    It was a little confusing at first to set up, but I eventually got 3 machines total configured as part of my grid - 2x2GHz G5s + 1x867MHz G4. Perhaps if I read the instructions, I would've better understood some of the terminology (agent v. controller v. client, etc.).

    The tachometer is sort of flaky. Sometimes it's stuck at zero on one machine while it it is actively moving around on others. Other times it's stuck at some non-zero position. Opening up 2 tachs on the same machine (XGridBlast has its own tach) will show different speeds. Though I should have in theory 8.867 GHz total speed, I could never get it to go over the default 8 "red line"- I was curious if it would rescale once it exceeded 8.

    The XGrid client (where you submit jobs) has some default demo type things (I've mostly been testing the Mandelbrot one as it runs in a continuous loop), but it also has a way to build "custom plug-ins" which allow you to submit arbitrary jobs. In other words, executables don't have to be modified per se. Of course for any kind of parallel execution, they do, but if you need to to run 1000 iterations of the same command with slightly different arguments, then it should be able to distribute that "run" pretty well. The GUI for building up such a run is pretty easy to use.

    One potentially big issue I've noticed is that once you submit a job, you have to keep the XGrid app open until it is done. For a run that may take days or weeks, I think this could be a problem. I'd like for you to be able to submit the job, quit, and log out (or shutdown the client even) then come back later to check your results.

    Also, there doesn't seem to be a queue manager where you can see a list of jobs and their states.

    I think that for any file-dependent commands, you need local copies of the files on each Agent node. At least that's how it appeared from perusing the documents for XGrid Blast - each node needs a copy of the database.

    FWIW, we're using SGE successfully on a bunch of RedHat based servers, but though OSX maybe *nix, the installation and config was turning to be a pain.

    Anyway, those are my initial impressions. I'm sure some of these things will change in the "release" version. In the meantime, I'll have to get working on getting some real work stuff to try out (I work in a university bio department).

    -h3