|
Softpanorama
(slightly skeptical)
Open Source Software Educational Society |
May the
source be with you,
but remember the KISS principle ;-)
|
Solaris vs. Linux: Framework for the Comparison
by Dr Nikolai Bezroukov
3. Four major areas of linux and Solaris deployment
Mainframe - A computer system
whose purchase requires the approval of a committee of all the top executives
in the organization.
Mini - A computer system whose purchase requires the approval
of your boss and probably some computer bureaucrat.
Micro - A computer system you can buy at your local computer
store.James Brown posting to comp.org.acm
Sited from Softpanorama Bulletin,
Net-humor section
September 1993
|
|
Generally we need to distinguish between several major areas of linux and Solaris
applicability:
- Development workstation.
Here linux dominates (due to absence of virtualization capabilities it is often
used under VMware and now with newer CPUs under Xen3) because this is its area of specialization and Solaris
on UltraSparc can
be competitive only in configurations with
SunPCi cards
and Solaris on Intel only under VMware or on newer CPUs Xen. The ability to run Windows is an
essential requirement for most development workstations and with the current
dual-core CPUs there is no reason not to run two OSes on the same desktop or
even laptop (which due to Vista requirements is now often configured with 2G
of memory). That's were VMware was extremely successful and it is actually
sad that Sun brass failed to buy the comply and it was snapped by EMS, the
company with which it have rather little synergy. Workstations are the area were virtualization is becoming standard
tool of the trade in a large enterprise
environment. We will discuss it in more details
below.
- Low end servers:
single or dual core CPU servers with 4G or less of RAM and with the total cost
less then $6K (servers with the cost less then $5K often are considered to
expense in large enterprize environment, so the price of $5K+ is the minimum
under which you can capitalize and depreciate them). From the technical standpoint Linux has advantages on the low
end as this is its main base. Sun competes mainly on the high end of this price
range with T1000 and X4100/X4200, but suffers from too rigid component selection (too
few choices among installed hard drives is a real problem for Sun). Solaris
kernel is biased toward multiprocessor machines and until recently Solaris performance
suffered on a uniprocessor and dual processor servers. With improvements introduced
by Sun in Solaris 10 the jury is out and on multicore Opteron servers it might
be more competitive than before. One significant drawback of Solaris
in this area is a very weak integration with Microsoft server
infrastructure. Novell Suse beats Solaris in this area and that fact
along might spell troubles for the future of Solaris on low end despite its
real or imaginable advantages. Like Talleyrand used to say about such
strategic errors: "It is worse the a crime this is a blunder".
- Midrange servers
(2-8 CPU servers often with multiple cores per CPU, and 8-64G of RAM with
total cost from $6K to $100K). Solaris on UltraSparc used to have traditionally strong presence
in this segment and was the development platform for 64-bit Oracle (home
field advantage), but with the release of the newest line of Intel hardware
(Duo and Quattro CPUs with 1.33GHz memory) linux beats Solaris 10 on
UltraSparc by a considerable margin (sometimes to the extent that two
UltraSparc servers can be replaced by one similarly configured Intel
server). The fact that Oracle now promotes its own distribution also
tip the scales in favor on linux. Still Solaris
is definitely more stable on high loads and works better then Linux with larger memories (starting
probably with 64G of RAM) and with large
number of CPUs (over 8). But if we consider Opteron-based servers only, Solaris
X86 is competitive with linux and might even be superior in such metric an
stability under high load. Actually in case of Red Hat you need a
different, twice more expensive, distribution (RHEL AS) for such
configurations but this does not matter much for this class of deployment as
everything is pretty expensive here.
- High end servers
(more then 8 CPUs and more then 64G of RAM with cost starting from over $100K).
This sector is traditionally called "mainframes" although in a narrow meaning
mainframes are descendants of famous IBM/360 series that for twenty years (1960x-1980x)
dominated the computer landscape. Currently linux has no significant presence
in this segment of the market. The Linux kernel is much less tested with those
configurations and as such is attractive neither for large enterprises
nor for major vendors like IBM and HP (both of them have their own flavors
of Unix for this segment, which work much better then linux). Solaris
(along with AIX and HP-UX) is the king of the hill in this deployment area although
with Windows 2003 Microsoft got a foot in the door too.
There is also new fashionable area called
virtualization that falls in
between those classes. It is essentially and attempt to imitate functionality of
multiple low end servers on a mid-range or high end server. It is
connected with the trend to consolidation of servers with extremely low
load (circulating air in large corporation IT jargon) that is in a dialectical way
signifies the return of good old mainframes on a new level. Actually IBM
mainframes survived all adversities and now, more then 40 years after their
launch, can proudly host Linux servers. This shrewd IBM move helped to save
classic VM/CMS operating system which naturally became VM/Linux.
Currently AIX and VMware are the most popular choice for virtualization based
server consolidation but recently Xen made inroads into VMware turf (although
the development was financed by Microsoft, it is now supported by IBM).
Generally comparing servers the following two factors should be considered for
all classes of servers:
Modern applications are extremely complex with huge code bases. In a sense they
are modern engineering marvels. That means that other things equal the key to right
selection of the platform is the selection of hardware platform and OS that is used
for development of a particular application. If application is developed on a particular
platforms and OS then this OS has an important advantage that we will call "home
field advantage".
That means that for Java applications Solaris should be considered the No.1 platform
as the quality of implementation of Java on Solaris is the highest due to the fact
that it is the development platform for Sun developers. For Java applications
T1/T2 based servers provide an unmatched performance beating much more expensive
systems including IBM P5 550 4 core 1.9GHz Power 5+ in SPECjjb2005 benchmark.
It has interesting implications that were first noticed by Paul Murphy in his paper
"The megahertz myth and the UltraSPARC T1"[Merphy2006]:
There are some interesting implications here.
One of the most subtle, and most important, relates
to the competitive advantage the Java Virtual Machine
offers Sun in appealing to developers - because,
by using its own JVM and Java server software on
their test machine Sun demonstrated that the
JVM could be used as an easily accessible intermediate
technology to let developers take advantage of CMT
hardware without doing much additional coding.
For the same reason for most open source application linux is the preferable
platform as it serves as a development platform.
Another relatively important factor is the level of interest of the vendor in
open source applications. Actually open source applications are extremely important
for Sun as the best of their low end CPUs (T1 chips) are multicore and usage of
open source application allow completely bypass the issue of paying for multiple
cores. This is not true for many commercial applications. As such chips are becoming
more and more mainstream they might help to drive the level of support of open source
applications and scripting languages in Sun. Sun now support more then a dozen
open source applications installed by default ( "out-of-the box" ) on Solaris with
the most recent addition of Postgress [Sun2006a]:
Fully integrated into Solaris 10 with flexible support offerings from Sun,
Postgress on Solaris 10 is the open source enterprise database platform of choice.
For all "tier-1" open source applications the level of support is equal
to the level of support its Sun's own software. And that is a very positive development.
The fact that it in large enterprise environment linux is used only for rather
narrow set of roles with web server farms as the most prominent. Beyond this role
it its growth is very slow. In many cases RISK-based servers (not necessary Sun)
are so entrenched that to replace them with Linux of Intel (or Solaris on Opteron)
is very costly and can be done only during big corporate earthquakes like mergers
and acquisitions.
I would like to stress it again that in large enterprise environment low
end UltraSparc based servers with Solaris are competitive both with linux servers
and Solaris on Opteron for several reasons unrelated to CPU, relative quality of
those two OSes, or even transactional benchmarks. The main reason for such situation
is that proliferation of Unix flavors negatively affects large enterprise environment.
And usually linux increases the diversity of enterprise environment not by one unit
but by two as very seldom old flavors of Unix are completely displaced and there
is a real danger that both Suse and Red Hat will become eventually deployed.
All naive or crooked stories about how corporation ABS saved a couple of million
dollars by deploying linux are what it is: naive or crooked. In reality introduction
of linux is often dictated by fashion and/or by the inability of higher management
to distinguish between real cost cutting measures and fake one: the cost of adding
another flavor of Unix in a large enterprise mix easily nullifies any savings in
hardware unless one or two existing Unix flavors (for example HP-UX and AIX or HP-UX
and Solaris) are completely eliminated from the mix. In this particular area
large enterprise environment is quite different from Internet startups; unlike startups
large enterprises has history of Unix deployments and significant (and often expensive)
installed base of classic enterprise flavors of Unix (AIX, HP-UX and Solaris; often
all three of those).
As I noted before this problem in less severe form exists for Solaris too: Solaris
SPARC and Solaris on Opteron is still two different OSes (not then much as Red Hat
and Suse, but still there are differences because hardware platform are so different).
For example Open PROM is not available on Opteron. So objectively there is a cost
of introduction additional flavor of Solaris on Opteron into Unix ecosystem too.
It is just less then in case of linux. In fact my impression is that the more
administrator is qualified in Solaris on UltraSparc the more painful are those small
differences that exist between Solaris on UltraSparc and Solaris on Opteron.
That means that large corporate environment generally favors Solaris on SPARC
to Solaris on Opteron and paradoxically many Sun Opteron server are used with either
Windows or linux as both those OSes have a tattoo on their foreheads: "made for
X86 platform".
Of course this is a conservative position and it does not take into account price/performance
differences between UltraSparc and Opteron that is another driver of change.
But if integer or floating point performance is not crucial for a particular
application (which is true for all I/O bound applications) and benchmarks are close
there is very little reason to jump the UltraSparc boat: there is nothing in Intel
X86 architecture that is intrinsically attractive other then the combination of
low cost and high performance bought by hundred of billions spend by AMD and Intel
on keeping alive the technology which belongs to late 70th of the last century.
I hope that in 2007 Sun eventually will add new CPUs to its lineup as
a result of its join product development agreement with Fujitsu. With the
Fujitsu PrimePower UltraSparc systems outperforming Sun's SunFire systems (PRIMEPOWER450
(1870MHz) has SPECint2000=1344) and matching Opteron systems this merger of
technologies sounds very reasonable and timely.
Copyright © 1996-2008 by Dr. Nikolai Bezroukov.
www.softpanorama.org was
created as a service to the UN Sustainable Development Networking Programme (SDNP)
in the author free time.
Submit
comments This document is an industrial compilation designed and created
exclusively for educational use and is placed under the copyright of the
Open Content License(OPL).
Original materials copyright belong to respective owners. Quotes are made
for educational purposes only in compliance with the fair use doctrine.
Standard disclaimer: The statements, views and opinions presented on
this web page are those of the author and are not endorsed by, nor do they necessarily
reflect, the opinions of the author present and former employers, SDNP or any other
organization the author may be associated with. We do not warrant the correctness
of the information provided or its fitness for any purpose.
Created Jan 2, 2005. Last modified:
February 28, 2008