Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have 3 old computers lying around right now running a P2 at 800 MHz(?), Intel Mobile 1.6 GHz, AMD Athlon XP 2000+ at 1.66 GHz, and (might not use this) P4 at 2.7 GHz, all with 512 MB Ram, and am considering clustering them together for fun/knowledge. They would be running an undecided version of linux, preferably ubuntu based.

The issue is what I want to use it for: general computing and occasional video encoding. By general computing I mean day to day tasks. However I'm not sure if every program started by a single X session is going to exist on the same machine, defeating the purpose of such a system. Will programs be split up or exist on one machine?

Second, assuming this is running 100baseT ethernet (not sure if the PCI slot itself could handle Gigabit), would the speed of having a program exist over the network be an issue? It seems that the constant asking of various things in RAM would be quite slow.

And before you say "buy another computer!", that's not the point of this question. I'm asking would it be usable, not necessarily practical. And yes I know, this is going to be extreamly power consuming.

share|improve this question
up vote 4 down vote accepted

You can certainly do this. Any linux distribution should be able to do this out of the box.

X11 was designed to allow programs to be run over the network. X11 has the concept of a server, which is running on the computer that you are sitting in front of. You can start X11 clients on any computer, and they will display on the X11 server. X11 uses quite a bit of network bandwidth, but 100 MB should be fine.

With this setup, you will be running individual programs on different computers. Generally, when people talk about clusters they mean applications running across several machines. There are very few apps out there that are designed to run across multiple machines, outside of scientific number crunching.

share|improve this answer
You should also set up networked filesystem to provide unified virtual filesystem view for each host. E.g. "/home/qqq" is local on one computer, but networked on others. – Vi. Jul 19 '10 at 14:58
Would using X11 be handled by the cluster OS or would it just be a bunch of machines that I ssh into? @Vi: Thats actually a very good idea, something that I didn't think of. Will do. – TheLQ Jul 19 '10 at 16:51
You wouldn't need, or particularly want, a special cluster OS. This would all be done by ssh. Most of the cluster systems (i.e., rocks, warewulf) are meant to make it easy to install and update the system across multiple machines. For 3-4, they are more trouble then they are worth. There are queueing systems like openpbs to make it easy to schedule jobs on multiple machines. Again, with 1 user and 3-4 machines its overkill. – KeithB Jul 19 '10 at 17:04
Okay. I'll investigate further on how to do this. Thanks for the help – TheLQ Jul 20 '10 at 18:09

One day-to-day use would be to have them be distcc hosts. Which would be nice if you were running a source-based distro like Gentoo

share|improve this answer
While that is nice software, I rarely do source compiling, and even then it only takes 5-20 minutes. Even my java programs that I write only take a few minutes. Nice find though – TheLQ Jul 19 '10 at 16:49

Nobody mentioned a Beowulf cluster.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.