Opinion : Why do supercomputers run linux ?
Opinion : Why do supercomputers run linux ?
Nonsense. Places that buy supercomputers typically spend 10s or 100s of M$ on them; the largest ones are getting to be near 1G$. They typically have teams of dozens or hundreds of highly skilled people to plan, evaluate, specify and operate them. They are absolutely not lazy or incompetent.I'm not going to claim I know the answer to that question, but I'd say that incompetence and laziness could be a factor.
Wrong, the top of the list is dominated by RedHat and SUSE (often rebranded, for example as "Cray OS"). There are a few Ubuntu machines too. A lot of the OS installation on hero-class systems are highly modified and tuned, so what distro it is based on matters little.Ubuntu is one of the most popular supercomputing systems.
The groups that buy and build these supercomputers have so much money, they don't need sponsors. They are the sponsors.I have two factors combined: ... Linux has much more sponsors behind that push for it;
That's an important part of the answer: The Linux networking stack has been very good since the mid 90s, and has gotten better and better. And when I say "networking stack", I don't just mean ethernet device driver, socket and select() calls, but much more exotic technologies, like user-space networking, memory-mapped IO, Infiniband, tight integration with MPI, zero copy, and so on. Supercomputers rely heavily on fast networking.The definitive answer in the mouth of another. ... (then pointing at Don Becker)
There are many other open source OSes, which supercomputers do not use. Matter-of-fact, until about 10 years ago, there were supercomputers running BSD. Today there are none left.Because it is open source.
That's another important factor. HPC machines had many cores early on. Good SMP support is vital to them. The ability to carefully control NUMA (memory placement for threads and processes) can be very important; in modern architectures, the performance penalty of having the RAM attached to the "wrong" CPU can slow things down by a significant factor.Also: better NUMA/SMP support and lots of other in Linux in the beginnings of that switch, which are important for HPC and FreeBSD simply was not ready back then, but Linux already was or on its way.