PPC Linux vs. Mac OS X Server: Linux Edges Out
Spencerian writes "Mac OS X is a very promising new BSD variant, but how does it rate as a server? Byte.com writer Moshe Bar has made an extensively balanced performance comparison of Mac OS X Server 10.1.5 versus SuSE Linux PPC with the 2.4.19 kernel. Both operating systems ran on the same hardware: an Xserve 1U rack mount server from Apple. While /.ers may guess (correctly) at his results, Mac OS X Server 10.1.5 wasn't as far behind the curve as you might think. Performance might've been better if Moshe had Mac OS X Server 10.2, with its faster GUI and other enhancements, but still, it appears that Mac OS X Server 10.1 was doing pretty good for a 1-year old."
'You have requested data that the server has decided not to provide to you. Your request was understood and denied.'
Wow, a self-aware server that _understands_ the Slashdot effect. I wonder if it is part of their mythology.
-- Ed Avis ed@membled.com
This goes to show that Mac OS X Server does compare very well to other Unices (okay, Unix-LIKE systems) in terms of performance. With its preeeety GUI anemeties, OS X Server could be just the stepping stone we need to get more admins to switch over from M$.
:P
Now let's see OS X Server kill, er, compared to Windows 2000/.NET... Run, Bill, run!
"I am root. Bow before me." To this I say, "You are root, and you bear the sins of the world upon your shoulders."
What was the swap confirguration in linux during the test? I believe it was a SWAP partition rather than a SWAP file.
Whereas on OS X it should have been default(ed) to a SWAP file.
The difference in performance is quite considerable because for a SWAP partition the OS doesn't have to go through a lot of IO file system code.
To me, the performance of Linux over OS-X is marginal and not really worth considering. The choice really is over what the computer administrator is more comfortable with - hell, put NetBSD if it will make the administrator more productive. The server only costs $3000 bucks so screwing around just to get a 10% improvemnt is not worth it - but if Linux makes the administrator 10% more productive then do it.
Stupid Example:
I haven't benchmarked FreeBSD vs Linux and I really don't care - all my file servers are FreeBSD because I'm expensive and learning Linux is not cost effective (for me). YMMV.
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
Not really. As in most Unices, if the GUI is not being interacted with, it isn't eating up any cycles, either. The scheduler just puts it to sleep, awaiting an event (interaction).
Having a GUI on the server allows for simpler administration. Many folks that I know, that don't have a GUI on their server, also don't have a disply. Yet, they use VNC to more easily administer the server - or something like webmin or linuxconf in HTTP mode. Either way, you're still running a GUI.
Of course, console based administration is fine, too - but, Apple is about making things simple, even if you weren't raised a systems administrator. And contrary to Microsoft, their definition of "easy" doesn't correlate with the level of insecurity the system has.
Cheers.
a) Get the latest Jaguar
b) Go to Apple and SuSE and get advice on tuning
c) If it is available under SuSE, use gcc 3.1 for compiling
Moshe admitted that there was probably alot of optimizations that he missed. I'd like to see them both tuned for speed and then compare them.
I mean, thats like .04% wasted processor cycles.
Note to the clueless, the GUI doesn't consume much processor time if nothing is writing to the screen.
--
The internet is the greatest source of biased information in the history of mankind.
Maybe it means the opposite of "was doing pretty evil". Presumably describing a Windows/IIS server configuration.
2) Moshe is not smart enough to boot Mac OS X into command line, "Since for the life of me I couldn't figure out how to shut down the GUI environment of OS X" -- Moshe "I can't use Google" Bar. Here's a tip Moshi, when the log on screen pops up, type ">console" in the user line.
3) MacSlash has already dealt with this.
Strange women lying in ponds distributing swords is no basis for a system of government.
Yet, they use VNC to more easily administer the server - or something like webmin or linuxconf in HTTP mode. Either way, you're still running a GUI.
Reminds me - I have a FreeBSD box that I'm too stupid/time-burdened to get X running on it's crappy video card. But it serves up a GUI over VNC just fine.
I have another FreeBSD box that doesen't *have* a video card, and, of course, it servers KDE over VNC just fine. When I show it to MCSE types - theh sit there and stare. "b..b..but... I doesen't have a video card! How does it do that?"
Fun to play with their little minds.
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
Agreed... but let me throw you a curve.
POSIX systems have extensibility, portability, multiple programming languages, a networked windowing system with your choice of WM/DE, TRUE multiuser capability, efficiency and stability.
What does Windows have? Most of the above, specifically minus portability, the networked windows system (Terminal Services doesn't cut the cheese), efficiency (in recent versions) and stability. What Windows doesn't give you is choice. I argue Windows is not any more "designed for the user" than Unix, but rather that in Windows (or at least in each version) everything is only One Microsoft Way, and you cannot do much to change that. Microsoft also has mindshare and a $50+ stock price.
To the topic at hand now. Apple now more or less equals Unix as far as the OS is concerned. Specifically, OS X is POSIX plus everything being pretty, and there being an Apple Way (often, multiple Apple ways such as the choice of APIs) and a BSD Way to do most things.
This is why I argue OS X, now that it is proving itself as a server, can advance ground on the desktop and on the server.
"I am root. Bow before me." To this I say, "You are root, and you bear the sins of the world upon your shoulders."
And a Perl script launching "wget", instead of just using LWP? Whuh? Huh?
So, all these benchmarks are suspect. Beware. The author is either confused, or the editors mangled his message.
Great question, and one the Novell NetWare guys keep asking. My answer is that if you have a shop of NT, Linux, Unix, Macintosh and NetWare, you will have to know the commands for each one. This can be a pain to do, so what normally happens is that you get someone who becomes an "expert" with one of those systems. Then comes in someone like Microsoft and says how much money they will save by "Standardising" on one NOS.
The other issue is that if some MCSE type is not comfortable at all working on another platform then they will ALLWAYS recommend a Microsoft solution. If they walk up to a system and it has a GUI that is similar to Windows and they can do their job, they tend to be more open to using that technology. I believe that this describes a lot of people, in that they don't want to spend a lot of time learning something totally new.
I was a Novell/Microsoft guy who decided to give Linux a try about two years ago. I found the migration easy. I used the GUI as a crutch until I could learn the command line equivilant, and found Mandrake and RedHat tools very easy to work with. Without the GUI I would still be pushing NetWare and Windows. To be honest probably Windows...
Lastly, I have converted most of our business over to Linux now... It has run great. I do miss a good directory service and the ability to add disk space to a volume on the fly (yes I know about LVMs, but most distros don't default to it) oh yeah and a good free equivilant to Groupwise/Exchange server.
The more I learn about science, the more my faith in God increases.
These results, should they turn out to be reliable (which I believe that they are), speak volumes about the quality of MAC OS X. It is just slightly less efficient then Linux, yet still retaining a very high "ease of use factor". Not to mention it's amazing progess with the various components of it's GUI (Quartz - which creates two dimensional images, ATS, terrific OpenGL, the ability to save anything as a PDF, Aqua....) and easy to implement Cocoa and Carbon APIs.
Xinet Benchmark
I admit I'm a tad skeptical of the relevance of this benchmark, but it does seem that Apple has a nice system. I suspect you could roll your own better with OpenBSD or Linux and a nice AMD multiprocessor system. That's just me though. And realistically a lot of businesses DON'T want such systems. They want a "come as it is" system. Further a lot of people don't want all the messing around that you have to do with most Linux of BSD distributions. Apple has put a very nice interface on their server. Yet you have the added benefit of being able to drop to Unix when necessary.
Apple's big problem is still the chipset used with the G4's. Given that, despite many of the nice features, unless you are primarily serving other Macs, I don't think XServe is a good choice. If you have people with Unix backgrounds then I think FreeBSD or OpenBSD is better. And for many ASP systems Sun is the clear winner. However keep watch on Apple if IBM manages to restore hardware parity for Apple. I think that as a server OSX will mature quickly.
I ran the Scimark 2.0 Java benchmarks on the same machine, running Yellow Dog Linux, kernel 2.4.19, versus Mac OS 10.2.
Here are my results
Yellow Dog 2.3: SciMark 2.0a
Composite Score: 139.92947174097748
FFT (1024): 123.98639890992068
SOR (100x100): 166.2888365390105
Monte Carlo : 11.87347214947242
Sparse matmult (N=1000, nz=5000): 119.76608441786847
LU (100x100): 277.7325666886154
java.vendor: IBM Corporation
java.version: 1.3.1
os.arch: ppc
os.name: Linux
os.version: 2.4.20-0.7bsmp
MacOS 10.2: SciMark 2.0a
Composite Score: 65.55278911110278
FFT (1024): 45.766180267285044
SOR (100x100): 148.7766358092264
Monte Carlo : 8.128496082717385
Sparse matmult (N=1000, nz=5000): 43.78407287809933
LU (100x100): 81.30856051818576
java.vendor: Apple Computer, Inc.
java.version: 1.3.1
os.arch: ppc
os.name: Mac OS X
os.version: 10.2
Machine:
processor : 0
cpu : 7455, altivec supported
clock : 999MHz
revision : 2.1 (pvr 8001 0201)
processor : 1
cpu : 7455, altivec supported
clock : 999MHz
revision : 2.1 (pvr 8001 0201)
bogomips : 999.42
total bogomips : 1998.84
machine : PowerMac3,6
motherboard : PowerMac3,6 MacRISC2 MacRISC Power Macintosh
detected as : 129 (PowerMac G4 Windtunnel)
pmac flags : 00000000
L2 cache : 256K unified
memory : 256MB
pmac-generation : NewWorld
Mem: 253776
Try typing instructions into the steering wheel of your car, and see how well that works out. Maybe you could get a printed list of items inside your fridge, and after executing other commands to find out the expiration date, and how much of the item was left, you could type the name of the item, and it would appear. OR, you could just reach in and grab the milk and smell it. LIFE HAS A GUI FOR A REASON.
If you fall off a building, go real limp, because maybe you'll look like a dummy and people will be like hey, free dummy
A 10% performance difference is a wash as far as most sites are concerned, for a large site you will see this sort of a difference eaten up in your hourly traffic variance (e.g. you spec for the peak load, not sustained load) and if your bottleneck is at your servers then you have other problems to deal with. I can max out a reasonably sized internet uplink with a single, off-the-shelf PC. Given the cost of these boxes, it is _always_ going to be the case that your monthly bandwidth bill exceeds the cost of the servers needed to max out that connection. Think about that one for a few minutes and then get back to me on why you think a 10% performance difference is going to be a significant factor when it comes to purchasing decisions...
When I was running YahooMail ops we used massive farms of FreeBSD boxes, not because it was the absolute best server PC OS when it came to performance (although at the time I think that it probably was) but because it was what we knew best. Filo was a BSD hacker and we had a collection of ops guys who knew that particular OS inside and out -- if there was a problem we could track it down and figure things out, we didn't have to start guessing or need to make an appeal to newsgroups or mailing lists for help. For a large site performance numbers like these are one factor, but it is not the only factor and is often not even the most important factor. Maintenance and management can often be a more important cost factor then raw performance, sometimes it is something as "trivial" as driver support (or even raw performance differences among various drivers and OS configuration options) or what the team doing the technical evaluation feels comfortable with using and supporting.
The Darwin kernel is based on Mach. While not a performance demon, Mach offers some very interesting advantages for Apple. Primarily, they have full rights to the code and can relicense it, whereas Linux would have bound them by the GPL. There's some technical advantages too, though.
First of all, Mach was/is developed by Avi Tevanian. Avi is a old buddy of Steve Jobs and they've been working together since the NeXT days. Any questions about architecture? Ask the guy that wrote it, he's just down the hall.
Secondly, the micro-kernelish nature of Mach makes Darwin (and OS X) a highly portable platform. With Motorola on the ropes, being able to shift platforms quickly is far more important than raw kernel speed. Darwin gives Apple hardware options, and options are a very good thing for Apple to have right now.
Lastly, there's momentum. AFAIK, their kernel crew came over from NeXT, where they'd been using Mach since the eighties. Why bother learning the ins and outs of a new architecture, when you've already got something that works? Better to extend what you've already got.
Darwin offers a pretty solid foundation for Apple. Moving to Linux would have taken a large effort for questionable gains.
This
This is a good test to see how efficient MacOS is. And personally, I'm a bit surprised that Linux "won"; after all, MacOS was supposedly written by people who know that hardware inside-out, and should be very well optimised for it.
But this is not much of "MacOS vs. Linux" server benchmark, because Linux can run much faster on other plaforms. Why should you buy an Xserve to run Linux when you can get Intel / AMD / Transmeta systems that are faster and / or cheaper? The main (only?) reason to buy Apple hardware is the operating system. Which, judging from these reults, definitely has room for improvement.
RMN
~~~