Slashdot Mirror


Xgrid Agent for Unix

mac-diddy writes "Someone on Apple's mailing list for Xgrid, Apple's clustering software, just announced an 'Xgrid agent for Linux and other Unix platforms' available for download. There are still some issues being worked on like large file support, but it does allow you to simply add a Unix node to your existing Xgrid cluster. Just goes to show that when companies embrace open standards and code, the world doesn't fall apart."

36 of 219 comments (clear)

  1. My Experience by artlu · · Score: 5, Interesting

    My company has had experience using XGRID on our G4 notebooks. We always leave XGRID running and when we are at the office it is like having 20-30CPUs available at any given time. Now with Linux, we can have about 300 CPUs available, I just wonder how efficient it really is in the non-osx atmosphere.
    Time to find the download.

    GroupShares Inc. - A Free Online Investment Community

    --
    -------
    artlu.net
    1. Re:My Experience by JamieF · · Score: 4, Informative

      Here are three gotchas that can make this sort of thing less appealing than it may seem at first:

      Problem type: The problem may not be well suited to running on a bunch of PCs (especially when the agent app isn't allowed to take 100% of the machine's resources to accimplish the task) over typical office networks. Basically if the app needs to communicate frequently with other nodes, or if a huge data set is involved (or both), latency or bandwidth issues might outweigh the possible advantage of putting more CPUs to work.

      Security: The data may be highly sensitive, in which case you might not want to put it on ordinary desktop PCs that might have untrustworthy users, spyware, etc.

      Configuration: The configuration of your office's PCs may vary enough to make the cost of getting a companywide desktop cluster working unacceptably high. You'd have to pick a few target configurations and settle for that. Hopefully drivers and such wouldn't matter as much as CPU, RAM, disk, and OS version, but there are still companies that are just now getting their desktops updated to Win2K. There's also the headache of installing yet another required application on a large number of heterogeneous machines, which is virtually guaranteed to result in confusing installation problems. Oops, our app crashes if the user has this or that service pack installed. Oops, our app requires strong encryption. You could build your app on top of some sort of moderately portable framework or VM or whatever but that will have system requirements too, and probably will have some surprising gotchas when deployed in a real-world environment.

  2. How many clusters by Anonymous Coward · · Score: 5, Interesting

    actually have hetergenous hardware platforms? It would be interesting to see a G5/Xeon/Athlon cluster make the top 10 in speed.

    1. Re:How many clusters by aixou · · Score: 5, Funny

      That would bring a tear to my eye. "I have a dream that one day, all different architectures can work together in a single cluster, and processors will be judged not by the flavor of their bits, but by the speed of their results."

    2. Re:How many clusters by foidulus · · Score: 4, Funny

      I have a dream that one day, all different architectures can work together in a single cluster, and processors will be judged not by the flavor of their bits, but by the speed of their results.
      You forgot, "as long as they don't run Windows!"

    3. Re:How many clusters by 0racle · · Score: 4, Informative

      Well firstly, since Windows is more then just a kernel, just because the Dev kit has it does not mean Windows as a whole does. Secondly, Athalons, P4, Celerons and Xeons are all the same architecture, ia32. If you had used the P4 and say, Itanium or Opteron/A64 you would have a point, which is why I qualified the statement in the beginning with 'to a large extent.'

      --
      "I use a Mac because I'm just better than you are."
  3. imagine by Anonymous Coward · · Score: 4, Funny

    imagine a beo...oh...

    1. Re:imagine by wpmegee · · Score: 4, Funny

      Imagine a beowulf cluster of /. trolls!

    2. Re:imagine by Anonymous Coward · · Score: 5, Funny

      Don't have to.

  4. Kinda Cool by hypermike · · Score: 5, Insightful
    Imagine waking up one day to find your Mac has solved a vexing scientific problem. While the cure to cancer, super-efficient solar power and ending world hunger are a ways off, you can combine your computing resources using Xgrid -- and help usher in a new era of biological breakthroughs, rocket science and advanced models of scientific phenomena.

    Everything is better clustered...

    --
  5. I've been dying to know.... by numbski · · Score: 4, Interesting

    I have my G4 powerbook, 866 and my 800mHz iMac on my LAN at home.

    If I use XGrid on the two, what kind of performace could I use it for day to day?

    Faster compiles of applications would be the first thought. Any usefulness, say running photoshop? How about Quake? MAME?

    --

    Karma: Chameleon (mostly due to the fact that you come and go).

    1. Re:I've been dying to know.... by Colol · · Score: 4, Insightful

      Of the applications you've mentioned, only compiling things in Xcode would have any benefit. To utilize Xgrid, the application has to be written for it, which most apps simply aren't (and given turnaround issues, it would be suck for things like Quake and MAME).

      Xgrid's main benefit is in "grunt work" calculations that aren't necessarily needed immediately. Things like SETI@Home or Folding@Home would be the sort of thing Xgrid excels at: throw some data out, have it processed, get it back when it's done.

      While Apple has made clustering drop-dead easy, it's really not targeted at the home or small-business user, and the potential uses are pretty limited in that field.

    2. Re:I've been dying to know.... by mrchaotica · · Score: 4, Informative

      You don't need XGrid for faster compilation - Developer Tools already includes distcc

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    3. Re:I've been dying to know.... by Twirlip+of+the+Mists · · Score: 4, Informative

      To utilize Xgrid, the application has to be written for it

      Not so, not so.

      If your problem is embarrassingly parallel, chances are you can use Xgrid to run it right now.

      For example, let's say you're rendering a 3D animation. (I haven't done real 3D work since the PowerAnimator days, so pardon me of some of my jargon is antiquated.) You've got a scene file on which you can run a render command. A command-line argument tells the renderer which frame to render.

      No problem. Just use use Xgrid's Xfeed plugin. Xfeed lets you set up a job that runs a single command with a variety of command-line arguments. You tell Xfeed that you want to run the "render" command with "-f" and the numbers 1 through 720.

      Xgrid goes to the first available machine on the grid and says, "Run render -f 1." Then it goes to the second machine and says, "Run render -f 2." And so on, until there are no available machines. Then it waits until a machine becomes available and says, "Run render -f n."

      As each output file (a frame, in this case) becomes available, Xgrid (the client application itself, I mean) collects them in whatever directory you specified when you submitted the job.

      The cool part comes when you realize that this isn't a cluster. It's a grid. That means machines can come and go as they please. If this job is running overnight, when I come in the next morning and sit down at my workstation, the agent on my computer stops the job and de-registers itself. The job goes back in the controller's queue for processing on whatever the next available machine is.

      And you don't have to have any special software for this. It can be done right now with the tools that already exist in Preview 2.

      --

      I write in my journal
  6. How would that work? by Anonymous Coward · · Score: 5, Funny

    [iMac] GOOD MORNING

    [Me] Good morning, computer. How are you?

    [iMac] PRETTY GOOD. I SOLVED A VEXING SCIENTIFIC PROBLEM LAST NIGHT.

    [Me] Oh is that so.

    [iMac] YEAH. I FOUND A SOLUTION TO THE HEISENBERG-BERTELLSMAN PROTEIN FOLDING DELIMMA.

    [Me] Huh.

    [iMac] THE ANSWER TURNED OUT TO BE 42.

    [Me] .. That's... nice. So how about some Doom 3 then?

    [iMac] OK

    1. Re:How would that work? by Anonymous Coward · · Score: 5, Funny

      [iMac] ALSO, MY SPELL CHECKER NEEDS AN UPGRADE.

      [Me] Ok. Also, could you not use so many caps? It's like YELLING.

  7. Re:Mixed Company by Carnildo · · Score: 4, Informative

    Somewhat silly, but wouldn't you incur a bit of overhead mixing machines of different endian-ness? I suppose for non-communication intense algorithms this wouldn't be a big deal.

    Not really. Everyone uses network byte order for communication, so you won't have more overhead in a mixed system than you would in a homogenous system.

    --
    "They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
  8. but.... by jwcorder · · Score: 5, Funny
    "Just goes to show that when companies embrace open standards and code, the world doesn't fall apart."

    But the world hasn't fallen apart using Microsoft either...oops, I said that outloud....

    --
    http://jayceecorder.blogspot.com
    1. Re:but.... by Tjp($)pjT · · Score: 4, Funny

      It is OK. You didn't utter the name three times.

      --
      - Tjp

      I am in wallow with my inner money grubbing capitalistic pig. ... Oink!

  9. In general it makes life easy by SuperKendall · · Score: 5, Informative

    In the past, as I have moved between jobs, I've written a number of Object->relational mapping tools.

    After a while they cease to become fun to write, and you'd rather just get on with writing code that does something instead of infrastructure. By using and contributing to OSS projects, you can use the same code no matter what company you end up at. Because the code is portable it can become part of the package you can offer to a potential employer - they not only get an employee but potentially one that can producive almost right away because they are familiar with the tools they'll be using, with no cost to the company for said tools.

    So it makes life easier for you, less re-work. And it makes life easier for employers, as they get richer products sooner. And if the employee becomes really proficient at a widely used OSS project they can write their own way through consulting or training.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  10. Re:It Doesn't Show That At All! by xchino · · Score: 4, Insightful

    If everyone was going ot be using Linux PC's in their cluster, they would just use one of the existing clustering applications. The only reason anyone would use Xgrid is because they plan on using SOME mac nodes, which is better than none. This could increase sales by opening up Macintosh hardware to projects that couldn't use it before. Due to the cost of a Mac hardware, it is often not feasible to build an all Mac cluster, but if I can throw some G5's in here and there Apple gets some of my money as opposed to none.

    --
    Everyone is entitled to their own opinion. It's just that yours is stupid.
  11. Re:It Doesn't Show That At All! by aristotle-dude · · Score: 5, Informative

    Actually, no it is quite feasible if you do it on a large scale and depending on what you use the cluster for. Big Mac and the Army cluster are two examples of where a mac cluster can be cheaper.

    --
    Jesus was a compassionate social conservative who called individuals to sin no more.
  12. Re:Apple embraces opensource? by Anonymous Coward · · Score: 5, Informative

    This troll is getting old. MS does not and never did own 40% of Apple. They bought a large chunk of non voting shares in exchange for making IE Apple's default browser. As soon as the 3 year contractual agreement was up, MS sold the shares, and for a decent profit.

  13. Re:So could someone please inform me by tupps · · Score: 5, Interesting

    Stop thinking of developers as individuals who are trying to sell a product and think of developers as people who work/contract for organisations.

    Instead of buying a product that is 95% of what I want I can take a OSS package that is 90% of the way there and pay a developer to customise it to exactly my needs. Now I have a solution that is perfect for my business, maybe given something back to the OSS community. While if I had bought the product I would probably have to change my business to use the product. The company now is also free of licensing and upgrade issues. Also they do not have to worry about the vendor going out of business or introducing a new version with no support for the old version.

    If you think of software as tools for business rather than something that a developer trys to sell OSS makes a lot more sense.

    --
    Go out and get sailing!
  14. Re:Apple embraces opensource? by The+Ancients · · Score: 4, Informative
    The only funny thing about this comment is that MS actually owns 40% of apple.

    I wouldn't say that - I find it pretty amusing you've been registered at ./ for so long and are still so wrong.

    p.s. I know I should reference - how about 'MS owns fuck all anymore' - will this do?

  15. Re:Mixed Company by kma · · Score: 4, Informative

    Not quite. "Network byte order" is big endian. So on big endian ppc's, which macs are, all those "ntos" macros, etc., expand to NOPs. Once you introduce little endian machines into the mix, they start doing real work to transform internal representations for the wire.

    The real tragedy is when you have homogenously little endian machines; e.g., a network that only has PCs on it. An integer gets byteswapped twice to end up in exactly the same byte order it was all along.

  16. Re:So could someone please inform me by Anonymous Coward · · Score: 5, Insightful

    Maybe that's not the right way to look at it. The way I see it is that these people put the time and effort into making great tools, not end product. Now they, and everyone else, are free to use those tools to create great products, which they don't give away for free.

    The mistake I see in every Microsoft attack on OSS and the great fallacy behind every purchased white-paper that predicts that OSS will destroy the economy is that writing and selling software is only a very small part of the economy! Most of the economy is involved in creating real, tangible things like cars and planes and food, etc, etc. Most of the economy is not involved in endlessly copying and selling the same pattern of bits.

    OSS creates tools that promise to improve the creation of many, many things on this planet and improve the prosperity of all. The only ones threatened by this are those that have made a business of monoplizing ideas. Ideas that are so easy to duplicate or recreate that they are deliberately trying to setup and use the force of law to keep people from producing ideas on their own.

    OSS is really a "paradigm shift". This phrase has been used so emptily so many times by senseless marketing droids that it has lost impact over the years. But it is here, it is now, and it is unstoppable. How can they stop it? We have the source!

  17. Re:Mixed Company by DonGar · · Score: 4, Interesting

    What's worse.... that often ends up happening for loopback connections.

    --
    plus-good, double-plus-good
  18. Good for home use too. by Gordon+Bennett · · Score: 5, Interesting

    Some households have a mix of computers and one can begin to see the benefits - for example, to halve the video compression time of iMovie when making a DVD.
    Considering Apple's ease-of-use for heavyweight *NIX apps this would empower more people to have more computing resources available rather than the big fish out there - schools with low budgets would be able to stretch their capabilities that bit further. And so on.

    1. Re:Good for home use too. by zalas · · Score: 4, Interesting

      Might video compression work if the first scanning pass is done on one computer and the keyframe locations are extracted and then each computer in the grid/cluster would render the chunks between keyframes in parallel?

  19. Re:Probably a silly question but... by Novajo · · Score: 5, Informative

    Can anybody confirm if the linux and unix ports are smp aware?

    (I wrote the xgridagent).

    As the other poster said, XGrid does not care what the binary does (so it can be smp aware, multi-threaded, whatever). However, the xgridagent itself is not explicitly smp aware, but it is multi-threaded. Each task is started in its own thread and depending on the OS(?) I guess they could spread to other CPUs. The other aspect of the question is "Does the Unix XGrid agent support MPI like Apple's GridAgent for OS X?". It does not and I can't say for sure how difficult it would be to support it. However, since all communication is done via the XGrid protocol, I don't see what would prevent it from being implemented. BUt other things need to be done first.

    The most pressing issue is to fix the annoying "large message" issue which makes the agent hang (while it waits forever for the controller to accept more frames). I am convinced it is trivial, I just don't know enough about BEEP to fix it. I am hoping somebody who knows BEEP will take a look at xgridagent-profile.c and fix the xgridagent_SengMSG() function and send me the patch.

    Daniel Côté

  20. Re:So could someone please inform me by eamacnaghten · · Score: 5, Insightful
    I am involved in both proprietary and open software.

    In the proprietary model the software is becoming worth less and less. 5 years ago run time licenses accounted for over 80% of the income of commercial software provider companies, now you will be lucky to see it account for 40% and it is going down rapidly. The rest being made up of support, training and other services.

    However, the cost of producing software is the same, and what is more, it is an upfront cost. You cannot get money for it until after you have paid a programmer to write it.

    Open source takes the above to a logical conclusion. As software is becoming relatively worthless (as far as run-time licenses go) you do not lose by giving the software away for free, and if you Open Source it you have available a 90% solution from free software out there before you begin thus cutting down on the production costs.

    It is not about "giving stuff away" or people "not paying a cent" to use your software, it is about facilitating an extremely cost effective way for which software companies can provide services to the customer by using open source predecessors, and passing the benefit on to successors.

    --

    Web Sig: Eddy Currents

  21. Re:So could someone please inform me by Anonymous Coward · · Score: 5, Insightful

    Well, when I develop a piece of software (or hire someone to do it for me), I solve one of my problems. That's the benefit. End of story, really.

    For instance, I need a special library for an app. And none of the off-the shelf ones exactly match it. So I write it.

    Now, I find out that other people have a similar problem. So I think to myself "well, I already got my ROI, so to speak. I solved my problem. So now I'll put this software out as open source and see what happens".

    And people use the software in ways I didn't think of. They give suggestions on how it might be better. A few send in patches. Suddenly my solution is an even better solution, at no cost to me.

    On the flip side: I download an open source library. It works okay, but there are some bugs and it needs a little refactoring. It will cost $1000 in labor to fix this library, vs. $5000 to write it from scratch. So I do it and send the patch to the author. The author is happy (free patch), I'm happy ($4000 worth of code for free), and I don't have to re-do my fixes in the next version! I sure wish commercial software worked that way.

    A lot of folks make it seem that OSS is a bunch of people working for others, for free, like communists or something. Not true .. I write software *to benefit myself only*. I am a capitalist. I fully believe in free markets. I believe people should make as much as they can and get to keep it all. I also believe there's no justification for charging for something that costs nothing to copy, so I don't. It goes against my thinking: the only way something that costs nothing can be charged for is if you have authoritarian government enforcing it (which we do). Charge for service, sure. Charge for installation, sure. Charge for consulting, yup. Charge for the box, the CD, whatever. All of that takes time or materials and I can't "copy" it for the next guy.

    Of course, you don't have to explain *how* OSS works. Just look and see that it exists and is self-sustaining, that's enough to prove that *something* about it works!

  22. embracing? by dekeji · · Score: 4, Insightful

    Xgrid is proprietary, closed-source software. I think that hardly counts as "embracing" open-source software. Many other parts of the Macintosh platform are proprietary and closed source as well.

    I'm not disputing that Apple released Darwin source code. But before you start cheering, keep in mind that Darwin started out as open source: the CMU Mach kernel and bits and pieces of BSD. And it's not like Apple made a big sacrifice in releasing a kernel that looks and feels like half a dozen other open source kernels.

    1. Re:embracing? by jurv!s · · Score: 5, Informative
      But Xgrid uses the BEEP protocol for all communication, which is open, and allowed this project to interoperate easily. The closed source part of Xgrid is just a Cocoa GUI that was thrown together with Interface Builder. This made it a lot easier to interoperate than say, the nasty Exchange/Outlook communication combo.

      If Apple breaks this intentionally (meaning not for adding significant, enhanced functionality) in their next release, I will stand with you as an anti-Apple nay-saying zealot and deride them all up and down /.

      -Potentially recovering Mac zealot (it's so hard with WWDC right around the corner :-( )

      --
      sigs are for fools and trolls. no signature is *always* appropriate. you should turn them off in your preferences.
  23. It's for ad hoc cluster creation... by csoto · · Score: 4, Informative

    The other packages require a bit of planning, whereas Xgrid excels at locating nearby resources for pawning off processing tasks. Rendezvous (ZeroConf) is exactly about the need for ad hoc networking. Xgrid extends that to the cluster...

    --
    There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom