To (open)solaris or not to (open)solaris, that is the question

Platform consolidation is in full swing in HPC, has been for a while. This is an economic reality. The platforms we are being told by ISVs, that will be supported into the future are Windows and Linux. We don’t see much new AIX support. It is simply not a volume platform. Nor do we see much new HP/UX support. It is also not a volume platform. Similarly, we don’t see much new Solaris 10 support.
Solaris 10 is attempting to be a volume platform. It has been “open sourced” and is available (at the source code level) from the site. You can sign up with Sun to pull down 5 iso images to build a bootable DVD (one would be much better, especially if set up using bittorrent) of Solaris 10. You can pull down the tools. You can pull down all sorts of other goodies. For free.
I think their view is that this spells the end of Linux.
After evaluating it, I think I have a rather different impression. Here is my impression on the install and a quick application test. This was a 64 bit install on the hardware. This is not a comprehensive evaluation.
Linux detects everything in this machine just fine. That’s SuSE, RH, Fedora, Knoppix, etc. It works great in both 32 and 64 bit mode. No issues. All parts have drivers for them. This is an AMD64 based Athlon64 3200 with 2GB ram, lots of disk space, 1 GBe, 2 x fast ethernet, nVidia graphics card.
The good:
It does appear to be “peppy” on the machine
JDS is cute. A bit more finely polished than normal Gnome.
The bad:
Network was not detected. Graphics came up in 640×480 mode until I burned an ISO CD with the nVidia download drivers (kudos to nVidia for having a sane development model where additional platforms are supportable). To get graphics to come up, I had to select the 256 color desktop version, and do some other twiddling. The default installation was dumb and mute. Command line only. No network.
The 2 SATA drives were not detected by Solaris. I had to install a PATA 160 GB Seagate drive to be able to install Solaris.
The ugly:
It wouldn’t be so bad that the network adapters weren’t detected if I could run some magic command to get them to detect. Googling about, I discovered that my network drivers are not officially supported. There is a pointer to an unsupported page. This is the “rh” module. I saw that the LNE100tx was supported and installed that into the machine. No dice. I could not get Solaris to recognize it, until I started using command lines with pci-table entries on them.
My acid test on installation/setup is that at the end of the installation, the machine should be able to ping Google over the network if the network is working, with minimal interaction from me. Very simple test. The base installation of Solaris 10 failed this on this machine (this is a test machine that we use to test new OS installs among other things). Took me about 8 hours to get to a point after combing google and the net to find the right magical incantations (as indicated, requiring downloads, CD burns, multiple builds, module installations, some other magic incantations, …).
Well, I wanted to see how the bootable CD versions of OpenSolaris went. These are basically folks who build their own version of a distribution, runnable (and sometimes installable) from a CD/DVD, which lets you use them out of the box.
Belenix is an OpenSolaris CD distribution. I downloaded it, burned it, booted it. It asked me which version of the OS to run (with KDE or not). I selected KDE (I prefer gnome, but can use KDE in a pinch). Took a while and up came a working 32 bit OS. Network worked, graphics worked. No magical incantations. It just worked.
This is exactly, precisely what Solaris 10 should do. It should just work (be seen on the net, work with all the disks, graphics, …) . Out of the box, off the CD/DVD. This was OpenSolaris though.
Next I tried Schillix. What was interesting about this is that it gave me the option of running the machine in 32 bit or 64 bit mode. This came up to a command line, and it also detected/loaded the right modules.
This was a limited test over the last 2 weeks. I am not terribly impressed with Solaris 10 from Sun from the installation perspective. OpenSolaris bootable CDs are another matter.
For application testing, I ran our tests of HMMer on the system booted into 64 bit Linux, and 64 bit Solaris. I’ve been told time and again how much faster Solaris is than Linux, how much better the compilers were. Baseline results were that the gcc under 64 bit Linux generated similar timing (within 5-10%) to the Solaris optimized build (using the Sun compilers I pulled down and installed). Moreover, our optimized build on Linux was about 2x better than both the Solaris and normal linux version. We are working on the optimized build under Solaris as well to see if it gets any benefit.
All in all, I am not blown away by Solaris 10. I simply don’t perceive it to be better than Linux. This may or may not change over time and more use. I will continue to evaluate it and see if it can be made to work any better.
FWIW: I have been using Unix and Unix like OSes for the better part of 18 years. Irix, Unicos, HP/UX, Solaris, AIX, and Linux. Some of these are quite impressive in terms of ease of use and power (Linux) some are for masochists (HP/UX). There was much to like in Irix, though the source level incompatibility with other OSes was maddening. Unicos tried to be helpful.

1 thought on “To (open)solaris or not to (open)solaris, that is the question”

Comments are closed.