A Fast Start For openMosix
axehind writes "Dr. Moshe Bar recently announced the creation of openMosix, a new OpenSource project. The project has quickly attracted a team of volunteers developers from around the globe and is off to a very fast start. openMosix, is an extension of the Linux kernel. openMosix is a Linux kernel extension for single-system image clustering. openMosix is perfectly scalable and adaptive. Once you have installed openMosix, the nodes in the cluster start talking to one another and the cluster adapts itself to the workload.
"
Oh wait...
Almost 5% of the text is the word openMosix. Is it more or did that post sound like an advertisment to recrute Open Source Developers. Now I am going to read the article.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
openMosix is perfectly scalable and adaptive
Nothing like a 'perfectly' statement to discredit a story.
Don't blame me, I get all my opinions from my Ouija board.
There's already a mini-howto explaining how to set this up in combination with a Linux Terminal Server. Basically, you end up with a bunch of workstations that actually relieve the server from CPU load. Odd to think that the more diskless workstations you add to your network, the faster it becomes!
What's your damage, Heather?
This seems like a great technology for an enterprise to take advantage of older hardware. Upgrading your company's desktop PCs? Take the older ones and plug them into your openMosix cluster. If I recall correctly, processes can automatically migrate from node to node based on system load. I know my old had a Unix cluster for all of the CS students to use. It would get seriously bogged down at times, especially around finals. It'd be nice to have something like this which is able to take advantage of older hardware. There were times when a simple 'ls' would take 30 seconds to complete. Certainly this is something that an old 486 node could take care of.
Migrating live processes between boxes with open sockets is the last big obstacle to OpenMOSIX being used in large web farms, as far as I know. It seems that OpenMOSIX is geared more to scientific computation problems with IO only at the beginning or end of the batch job. If a MOSIX process has a lot of I/O, it stays on the same box and is never migrated.
The bit I am curious about is - if Mosix were GPL, and presumably contributed to by various of the now OpenMosix researchers, how did it become closed?
I have found This link, but that suggests a code fork rather than a revival-after-closing-source.
-=DaveHowe=-
OpenMosix is my best friend. I run several machines at home and I can tell you that openMosix rocks my world. I have a (gasp) Windows machine on my KVM switch that I use for playing games. When I am not using it, I run VMWare with a small Linux install and openMosix to take advantage of that machine's processor power. No point in letting it sit idle when I am working on my Linux machines.
wolf31o2 Developer, Gentoo Linux Games Team
Under some workloads, I can go along with the assertion that a MOSIX cluster is just like having a big machine with a lot of CPU's. It seems to be great for those workloads and I would love to try it out. Those loads tend to be multiple long running (more than a few seconds) and not multithreaded. For MOSIX to be most efficient, there also needs to be fewer jobs than there are CPUs to run them.
Other workloads, however, will not benefit from MOSIX. These statements are based on reading the docs a couple weeks back, not on actual experience.
Under the MOSIX model, when a process forks, the child may run on the current machine or it may migrate somewhere else. If the job is short lived (ls, echo whatever | sed s/blah/baz, you get the point) MOSIX will perform poorly because it will spend more time trying to figure out where the process should run than would have if it had just run the program on the local host.
If you need more CPU time than one CPU can provide and your program is multi-threaded, a single multiprocessor machine will also work better. This is because MOSIX does not yet support threads running on different machines. A 128-node cluster of 386's is going to run Netscape slower than a single 486 because you will only be using one 386 CPU.
For cases where you just have too many jobs for the resources available (CPU or memory), you may be better off with something like Condor. It is great for submitting batch jobs, migrating those jobs around, and only running the number of jobs that the system can handle.
I tried (vanilla)mosix a while back. It was cool, but had some real world drawbacks. If you start a process on a node and that process opens a socket, opens a file, or uses shared memory, then that process is stuck on that node. So if you start 10 dnet processes on one node, they won't migrate to idle nodes because they have open sockets (to the key server).
I don't know if this is the case any longer, I heard rumor that all these things were going to be implimented, so it'll be an interesting project to watch.
Good Luck Open Mosix!
-The JungleBoy
"You never know when some crazed rodent with cold feet might be running loose in your pants."
-Calvin
What openMosix was openMosix the openMosix name openMosix of openMosix that openMosix project openMosix again?
Education is the silver bullet.
actually, I'm curious. What is the practical upshot, since it's different from Beowulf?
(also: so how's this differ from Appleseed?)
"Sometimes a woman is a kind of religion, she can save your soul & set you free from all your sins" - Bad Examples
if I 'open mosix" 4 computers and leave each one as a graphical login terminal to open a gnome desktop, would it make for a "snappy" or fast desktop, or would the I/O slow it down. (asssume 100baseT ethenet)
if anyone has tried using a cluster for 'end user desktop apps' how does it work out fsater/slower/no diff?
"The Most Fun Possible on 4 wheels" is at SunBuggy in Las Vegas
obviously, IANAL, so if anyone wants to take a stab at answering this one..
-=DaveHowe=-