Quiz time. Get out your No. 2 computers and answer the following question: For the fastest and most reliable high-end computing for your enterprise, will your operating system be 1) Linux, 2) Solaris, 3) OpenVMS or 4) Windows?
OK, put your mice down. If you answered Linux, give yourself 10 points; Solaris, 9 points; OpenVMS, 8 points; Windows -- pardon me, what are you doing in this class? Remedial IT is down the hall. Just listen for the chorus of "Are you sure your PC's power cord is plugged into the wall socket?" You can't miss it.
Microsoft, after spending decades paying no real attention to high-performance computing, wants to be an HPC player with the release of HPC Server 2008. Can you believe it? Yes, there was Windows Compute Cluster Server 2003. After a long search, I found one user. He told me, "Updates that require reboots are far too frequent for production-use systems," "Jobs randomly crash," and "Few HPC applications actually support Windows compute nodes."
Will HPC Server 2008 be any better? I don't see how it can be, really. On the plus side, it's built on top of Server 2008. To me, Server 2008 is easily the best Windows server operating system ever. But a good, solid server is only the start for HPC. While HPC Server 2008 has all the right buzzwords -- high-speed networking support, cluster management tools, advanced fail-over capabilities, etc. -- it also has all of Windows' historical baggage of bugs and bloat.
In addition, HPC Server 2008 requires signed drivers. That means that although in theory it will support high-speed networks, if your network fabric vendor hasn't jumped through Microsoft's driver hoops, you won't be able to use its products with HPC Server. For example, QLogic has just started working on beta drivers for its InfiniBand networking products.
Now take Linux. More than 80 percent of the world's fastest supercomputers already run Linux. Many of the major stock exchanges are switching over to Linux, usually from Solaris. To the best of my knowledge, the only important stock exchange that runs Windows is London's. You know, the one that crashed for an entire day a few weeks back. Flops like that sure make me want to put my enterprise's most important high-speed computing on Windows. Yes, indeed.
Linux, Solaris, OpenVMS and other high-end operating systems like AIX, HP-UX and z/OS already have tried-and-true hardware support and working HPC applications. To do HPC right is always challenging, but there are already many excellent products out there. I just can't imagine trying to build a corporate HPC at this point on not only an unproven operating system, but one that's based on a system that was never, ever meant for high-end computing.
Despite all this, I've been reading comparisons between Windows HPC and the just-announced Red Hat HPC Solution, which combines Red Hat Enterprise Linux with Platform Computing's Platform Open Cluster Stack 5. The discussion has been focusing on the license fees. Excuse me?
While looking at the real price of software is always interesting if you're a CIO or CFO -- especially when it's Microsoft's maze of Enterprise Assurance maintenance agreements and Client Access Licenses -- let's get real. Windows often requires you to reboot for major updates. Linux doesn't. Let's say you need to reboot, as a matter of course, six times a year with Windows HPC. With Linux, you don't.
If you think that doesn't sound like much, think again. This is HPC, not your PC, and not your ordinary server. Six hours of downtime in a year, all by itself, is a major failure in HPC. I don't care what kind of sweetheart deal you're getting from Microsoft; there's no way you, or anyone else, can afford Microsoft HPC Server 2008..