2.4 vs 2.6 Linux Kernel Shootout 533
FyRE666 writes "Infoworld are currently running an interesting comparison of the 2.4 series kernel against the new 2.6 release on Xeon, Opteron and Itanium CPUs with some surprising benchmark results for common server-related tasks. Basically the new scheduler helps the 2.6 kernel to cream the old 2.4: Samba tests showing up to 73% speed increases, MySQL showing up to 29% and Apache serving dynamic content up to 47% faster!"
Error (Score:5, Informative)
Real world vs. fanboy fantasies (Score:5, Funny)
I am what most people would consider a highly trained technical professional. Unlike most people who spout off at this site, I have the certificates to prove this, and furthermore they're issued by the biggest software company in existence.
I know how to tell facts from marketing fluff. Now, here are the facts as they're found by SEVERAL INDEPENDENT RESEARCH INSTITUTES:
Expenses for file-server workloads under Windows, compared to LinuxOS:
They compared Microsofts IIS to the Linux 7.0 webserver. For Windows, the cost was only:
Application development and support costs for Windows compared to an opensores solution like J2EE:
A full Windows installation, compared to installing Linux, on an Enterprise Server boxen:
Compared to the best known opensores webserver "Red Hat", Microsoft IIS:
These are hard numbers and 100% FACTS! There are several more where these came from.
Who do you think we professionals trust more?
Reliable companies with tried and tested products, or that bedroom coder Thorwalds who publicly admits that he is in fact A HACKER???
--
Copyright (c) 2004 Mike Bouma, MCSE, MCDST, MS Office Specialist
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled "GNU
Free Documentation License".
Re:Real world vs. fanboy fantasies (Score:2, Funny)
Microsoft.
You're living in a fantasy land if you think IIS is cheaper than or faster than apache 2.0.x
Re:Real world vs. fanboy fantasies (Score:3, Insightful)
Also, professional you may be (as in you get payed to do it), but you have very little professionalism if you have
Re:Real world vs. fanboy fantasies (Score:4, Insightful)
did I hear JOKE? (Score:3, Informative)
Re:Real world vs. fanboy fantasies (Score:3, Funny)
Re:Real world vs. fanboy fantasies (Score:3, Insightful)
Reliable companies with tried and tested products, or that bedroom coder Thorwalds who publicly admits that he is in fact A HACKER???
Hats off to you good sir! The funniest troll I've seen in a while. Actually had me about ready to engage in a shouting fit till that last line. Hilarious.
Putting the post under a GPL, genius!
And SCO shows... (Score:4, Funny)
...a stunning 129% increase on SPEClawsuit!
Okay, so that's with the latest and greatest.. (Score:3, Interesting)
Re:Okay, so that's with the latest and greatest.. (Score:2)
It should also help with the ~5ms delay when you interact with the system, so that it "feels better", regardless of the actual system speed.
But these aren'
Re:Okay, so that's with the latest and greatest.. (Score:3, Informative)
Also, for a more current comparison:
distributed.net rc5-72 Duron 1.4@ 1.9 (2400+) w/256kb l2 cache mod:
Windows: 5,500-6,000/sec
Linux 2.4.20-debian: 3,400-3,700/sec
Linux-2.6.1-rc1: 5,500-6,000/sec.
The upgrade to Linux-2.6 is worth it.
drugs are bad (Score:5, Funny)
Re:drugs are bad (Score:5, Funny)
IBM, according to SCO.
May try it then (Score:4, Interesting)
Then again BSD is very nice on the same hardware. Wonder how 2.6 linux & (free)BSD compare for those tasks.
Re:May try it then (Score:5, Informative)
Don't let my sig fool you, I like Gentoo better on the desktop. It's just that little bit more convenient to get the latest everything.
Some stuff I can tell you:
Impressive (Score:5, Interesting)
Its actuallly hard to believe that there is that much more improvement to be gained - it will leave the microsoft servers even further behind as I don't think that they are improving their kernel that fast.
One question:
Does this mean that we can see improvements in low end systems for desktop use, or is the benefit only for servers. Because if this helps low end machines, it extends further the number of machines that can move from (say) win 98 to a real OS, whose hardware has long been abandoned by microsoft.
Michael
Re:Impressive (Score:5, Informative)
Re:Impressive (Score:2)
Re:Impressive (Score:5, Informative)
Re:Impressive (Score:4, Funny)
You can grep your hard drive many times yet still browse the web with no slow down.
Re:Impressive (Score:2)
With that said, a kernel that provides more performance will allow a slow machine to do more work in a said time period. It should be noted than none of these tests said anything about XFree86 performance, and that is the number one thing that will make a slow machine "feel" faster.
Linux in cache? (Score:4, Interesting)
I haven't looked into sparc assembly enough to know if this is possible.
Re:Linux in cache? (Score:5, Insightful)
Assuming that the kernel is the only code running, and it is small enough to fit into cache, then it will get there eventually.
However, it would make no sense to keep the entire kernel in cache, since most of that code isn't used most of the time. Also, application software is running at the same time, which needs to be cached as well.
In other words, just trust the CPU. It knows what it's doing
Re:Linux in cache? (Score:5, Informative)
Theoretically, higher performance can be achieved in a non-cache-coherent design, since the programmer would ostensibly know more about which data is most frequently used on his system and be able to customize his kernel for that. Also, it requires less glue logic on the board. However, the intent may be thwarted if the programmer doesn't have all the documentation (or skills) necessary to make efficient use of a software controlled cache.
Re:Linux in cache? (Score:5, Informative)
Not really true these days. Some architectures do have an explicit 'cache preload' instruction, such as the SPARC V9 and the ARM9E to mention two. These allow the programmer to preload a D-cache line before it is needed.
As the speed of the CPU has increased much faster than the speed of main memory (and hence increasing the relative cost of a cache mis), compiler based techniques to emit cache preload instructions in advance, before the data is actually needed, has been the subject of some research in the past 7-8 years. The main reason to do it is software, instead of hardware, is that the compiler have a greater knowledge of the layout of the entire task, as it can 'look ahead' in the source code. The main disadvantage is that any static analysis, of course won't have access to dynamic (run time) data about the program as it is running.
If you wish to go further, you could do worse than to start with my former colleague Magnus Karlsson's PhD thesis on the subject:
And of course as always, Google and citeseer is your friend.
Well, actually, it doesn't these days... :-) Trust the compiler instead :-) (Yeah, right).
Re:Linux in cache? (Score:2)
Re:Linux in cache? (Score:2)
My thoughts... (Score:4, Interesting)
Slackware with Dropline, btw. I do notice that Java tends to take up 250MB of RAM every once in a while while running Firebird. I didn't have that problem with 2.x.x.
Re:My thoughts... (Score:5, Interesting)
The initial boot time to load the kernel seems to have massively dropped although I could be imagining that.
The new build system in 2.6 definately rocks, forgot to compile something important in? No need to wait for * to recompile anymore, just the vital parts are re-done.
Re:My thoughts... (Score:2)
P4 2.2, 768MB RAM. NO swapping :).
Re:My thoughts... (Score:2)
P4 2.2, 768MB RAM. NO swapping
I think that your absense of a swap file may explain this. 2.6 works alot faster on disk I/O.
This suggests to me that older low memory machines that use alot of swap file access may be much faster. Which would
Re:My thoughts... (Score:2)
Re:My thoughts... (Score:5, Interesting)
On the laptop I just compiled 2.6.1 for, however, (a 200mhz DEC HiNote) the speed increases are huge. You're not imagining the boot time drop - it's easily twice as fast on the laptop as 2.4.20 was. The GUI is also noticeably more responsive.
The new build system is great, especially on a slow machine
SB
Re:My thoughts... (Score:3, Informative)
Re:My thoughts... (Score:2)
Well, it's not exactly something you notice on the desktop, but having LSM built into the kernel now is definitely a good thing. This is basically SELinux folded into the mainstream kernel - and the improved security available from that is impressive. It is the sort of thing you really OUGHT to be using, even on a desktop
Re:My thoughts... (Score:5, Informative)
But all in all, it's the kernel. End users should be nicely unaware of it. Don't expect any fireworks to go off, most of the time you notice a kernel you will have hoped you didn't
2.6 on server? (Score:5, Insightful)
Re:2.6 on server? (Score:2)
Re:2.6 on server? (Score:4, Funny)
2.6 on server! (Score:3, Informative)
In fact, some of the more server-oriented developers were so content with the stability of 2.5 early on that they started making mild pushes towards a 2.6.0 release almost a year ago.
BSD Vs Linux Vs Windows 2k3 (Score:2, Insightful)
NTFS Read/write support? (Score:5, Interesting)
Re:NTFS Read/write support? (Score:5, Informative)
Re:NTFS Read/write support? (Score:4, Interesting)
Re:NTFS Read/write support? (Score:2, Informative)
So it's not really full NTFS write support yet.
It's shame, really. (Score:4, Funny)
Also notable.... (Score:5, Interesting)
I'm looking forward for Solaris + Opteron servers. Should be another interesting combo, performance wise. For one, Solaris 9 has some fantastic scheduling for multiprocessor machines. Additionally, it has been implemented in 64 bit for many years.
Re:Also notable.... (Score:4, Interesting)
One potential concern, though, is that while there has been Solaris for x86 for a while, it's not really its main platform... so it's bit like waiting for 2.4.6 kernel on, say, Sparc systems. So I'm wondering if Solaris design of scheduling (and other kernel parts) takes some advantage of Sparc processor's design, that wouldn't map nicely into Opteron? In future this should get better (since Sun is now allied with AMD), but Solaris 9 was written probably well before x86 was seen as strategic platform for Sun.
Re:Also notable.... (Score:4, Informative)
That's about all I can say ATM, but it -is- on the way...
I can't believe these results (Score:2)
For instance, a simple read of a 500MB file during a streaming write with a 1MB block size on my Xeon-based test system took 37 seconds with v2.4.23, and 3.9 seconds with v2.6.
Huh? That just can't be right, can it?
Also, a lot of us have been running with NPTL for some time now before shitcanning our Red Hat installs... I would've like to seen a comparison between 2.6 and a NPTL 2.4.
Re:I can't believe these results (Score:5, Insightful)
The two new I/O schedulers in 2.6.x help to resolve this. For more info, check here [kerneltrap.org].
Re:I can't believe these results (Score:2)
Good to know that. (Score:5, Funny)
And it's only $699 a box!
Time for some more FAIR benchmarks (Score:4, Insightful)
Tests (Score:3, Insightful)
Re:Tests (Score:3, Informative)
I'm guessing that the answer is
2.4 versus 2.6: file system performance? (Score:2, Insightful)
Re:2.4 versus 2.6: file system performance? (Score:4, Funny)
Stock Seagate Cheetahs use a fairly standard aluminium drive shaft, much like the one in a consumer grade piece of rubbish. We are replacing each of these with a carbon propeller shaft and light-weight fly wheel, which will increase initial acceleration of the drive platters, and will allow them to spin at a maximum speed of 17,500rpm versus the standard 10,000rpm. This should see our rate of apt-get transactions improve dramatically. But that's not all. As any good CPU overclocker knows, 'lapping' the contact surface of their heatsink will remove microscopic imperfections and result in a closer contact between heatsink and CPU. We too will be 'lapping' each hard drive platter. Of course this is dangerous to the platters, so we are always sure to use a fresh Kleenex each time. Once the platters are lapped, we can alter the suspension and damping characteristics of the read/write heads, making them float even closer to the platter and resulting in sportier turn-in, less body roll and more predictable handling even when dealing with 'rough' packages such as Troll Tech's Qt libraries which still have an aura of 'non-free' about them.
Finally we short-circuit resistor A24-J, which amazingly unlocks a special 'developers' mode of the hard drive, and firmware commands may be directly inputted using a text editor. We have developed a set of SCSI firmware routines which recognise the apt-get and .deb file formats even at the lowest level of hardware, offering stellar apt-get-goodness. Using a customised version of apt-get implemented in a mix of x86 assembler and Python (for the performance critical parts), apt-get is now able to bypass the Linux kernel, PC BIOS and the SCSI controller card, and communicate with the hard drive mechanics directly. This adds approximately an extra 60% to overall performance, to say nothing of the improvement in overall reliability and robustness.
We feel that these modifications will result in a drive array that will provide a superior platform for high-throughput enterprise level apt-get package management, regardless of filesystem. In fact we have very little choice about filesystem, since the lapping procedure with the Kleenex irreversibly etches tracks and sectors onto the drive surface. No need to worry about 5% of the drive being wasted on superuser-only space after a reformat! Now, I realise that these types of hardware mods may not be in the reach of all Debian users out there. I'm happy to discuss this further with the community if necessary. I am also creating a HOW-TO, which will be distributed via apt-get mirrors in the form of an 'info' document (man pages are filled with inaccuracies due to the inherently lossy compression techniques used in their production. RMS was really onto something with info!!!).
I look forward to the GNU/community's feedback.
backports (Score:5, Informative)
so go get it, and tell me how it will effect my surfing, emailing, mp3ing and general userish behavour on my P2 400 128RAM...
Go on, get to it!
Re:backports (Score:5, Interesting)
I just compiled 2.6.1 for my 200mhz laptop (Debian unstable) and the speed increase - especially at boot and for Fluxbox - was very, very noticeable, particularly for cpu intensive apps.
I haven't noticed any breakage - not yet - the machine has only been up for 4 days running 2.6.1. But so far it's great
BTW I used the kernel source from debian, not the backport.
A question for anyone out there with a Digital HiNote 7xx series laptop; any idea which sound chip it uses, and how to set up sound? Google hasn't been very informative. (Not a 2.6 problem, I can't figure out which driver to use; most people seem to be using old SB compatibility, but I can't make it work
SB
Benchmark against vendor kernels? (Score:4, Informative)
So it's not such a big leap for real users. Mind you, still a big improvement - especially for interactive use, and also considering that there are so many patches for 2.4 that are now integrated into 2.6, lessening compatibility worries (try patching Red Hat's pre-FC1 2.4 kernel source).
Re:Benchmark against vendor kernels? (Score:3, Interesting)
And I've never used a vendor kernel beyond booting the system and downloading/compiling my own.
just wait (Score:2, Funny)
2.6 just didn't wow me (Score:3, Informative)
Re:2.6 just didn't wow me (Score:2)
Again, I'm a newbie and I'
This can mean two things... (Score:5, Interesting)
1) The new kernel is really very good.
2) The old kernel is really very bad.
Really, if such huge increase was possible, there must have been a lot of room for it. If you face a really well written program, you have a hard time to speed it up by 5%. If you can speed it up by 50% without loss in other domains, it must have been seriously flawed.
Yeah, mod me flamebait. But first think if I'm really wrong.
Re:This can mean two things... (Score:4, Insightful)
So while 2.4 wasn't using the best solutions it was better than nothing. It's always better to have bad working code than great code that doesn't work. Hurd is a great example. It may be batter but it doesn't work (well enough for me anyway) yet so who cares.
IDE is another example. If I remember correctly 2.2 didn't have DMA support but it worked adding DMA makes it much faster but it would have made it more unstable if they added it at the beginning.
The last thing that you have to remember is that lots of the changes were taking advantage of features in the newer hardware. If you ran the same test on 486 you wouldn't get the same results as you'd have different bottlenecks. In another 10 years we'll get the same thing again. The might make it so that the bus to the memory is as faster as the level 2 cache on the CPU. If they do that they'll have to make big changes to the OS to get rid of the new bottle necks and you'd increase the speed by another 50% or maybe even 100%
Anyway that's enough ranting.
The root of all evil (Score:4, Interesting)
Therefore I assume #1 is much more likely than #2.
It would seem as though the 2.4 focussed on getting a number of feature in the kernel while the 2.6 series allowed the developers to work towards making those new feature faster. Programming a new feature from scratch while also aiming to optimize it for speed can often lead to buggy code. Optimized code is rarely as straightforward and easy to debug as a more general (but slower) algorithm. When it comes to something as important as a kernel I'd much rather have clean, clear code which can later be optimized than a confusing kludge meant to squeeze out the last little bit of processing power.
Just my humble opinion
Re:This can mean two things... (Score:4, Insightful)
Re:This can mean two things... (Score:5, Insightful)
New conditions require new optimizations and new designs; a good program optimized for a set of inputs which are common at one time may be really inefficient at handling inputs that become common later. Sure, you can make a program that's good for both sorts of input, but it doesn't make sense to try to do so until someone actually has such an input to test with.
Naked eye test (Score:5, Interesting)
ahem... (Score:5, Funny)
2.6 is the new hotness
How does this compare to the BSDs? (Score:4, Interesting)
Does anyone have factual comparisons of a reasonably-tweaked Linux (2.6 kernel) with a reasonably-tweaked [x]BSD (whatever kernel)?
Re:How does this compare to the BSDs? (Score:3, Informative)
It's an excellent comparison.
Re:How does this compare to the BSDs? (Score:3, Informative)
Singing to the Choir. (Score:4, Insightful)
One thing I've learned is not to take tech writers too seriously. Most of them are writers for a reason.
It may be faster (Score:3, Funny)
Requirements? (Score:3)
Re:Requirements? (Score:4, Informative)
from the bang-bang dept. (Score:3, Funny)
Bang bang it shot me down
Bang bang I hit the ground
Bang bang that awful sound
Bang bang my brother shot me down
I was 2.4 and he was 2.6
We rode on horses made of sticks
He wore black and I wore white
He could always win the fight
...
Yeah, I know it's pretty crappy, but it's past my bedtime and I'm tired ^_^
Re:Where's the distros (Score:5, Informative)
Let the ubernerds self-build 2.6 systems for a while and work out more bugs. If you want it you can have it, but mass-distribution before we even hit 2.6.2 might be a BIG mistake.
early 2.6 much better than early 2.4 (Score:2)
Re:early 2.6 much better than early 2.4 (Score:2)
When 2.4 came out it had stuff people needed right away on their desktops, USB, many more drivers, DRI for XFree86, and a whole slew of other things that we were playing catch-up with. 2.6 performs better, but it offers very little in terms of desktop-relevant improvements. The move to 2.6 will naturally be much slower than th
Re:Where's the distros (Score:2)
The only people who had problems with that were the ones who decided to upgrade their systems within a couple hours of the new (bad) kernel being released. Yeah, sure, it was a mistake, but not nearly as bad as people made it out to be. If you put a three-hour-old kernel on a critical machine, you're taking your chances.
Re:Where's the distros (Score:3, Informative)
Won't be a long wait; 2.6.2-rc3 [kernel.org] is out now.
FC2 test1 should be out next week with a post-2.6.1 kernel as default. With SELinux to boot, though it's recommended to disable it at boot time for test1. Mandrake 10.0 beta1 has 2.6.1 [mandrakelinux.com] too.
Re:Where's the distros (Score:2, Informative)
apt-get install kernel-image-2.6.0-1-processor type
If you're running stable, you shouldn't be running a 2.6 kernel anyway.
Re:Where's the distros (Score:2)
If you're running (debian) stable, you shouldn't be running anything thats not like 100 years old *anyway*
(I keep getting caught out by debian stable packages that are *way* out of date -- should be called 'debian *conservative*').
Re:Who cares? OS X kicks both. (Score:2, Interesting)
You aren't comparing like with like. I have windows, linux and OSX running on different laptops at home (ok, I have a problem with needing toys, but at least I have insight).
OSX is very nice - but you don't buy it for speed. In fact, the sort of people who buy it often gloat at h
Re:Who cares? OS X kicks both. (Score:4, Informative)
Re:Who cares? OS X kicks both. (Score:3, Informative)
The code is mostly 4.4BSD-Lite2. There is a good thread on OSNews about OS X that goes into comparing the source code, and it supports the idea that, while there are many changes, most parts of the BSD subsystem is still plain 4.4BSD-Lite2 code.
Article text (Score:2, Informative)
Linux v2.6 scales the enterprise
Bigger, stronger kernel sizzles in our performance tests
By Paul Venezia January 30, 2004
If commercial Unix vendors weren't already worried about Linux, they should be now. Linux has seen wide deployment in datacenters, generally as a Web server or a file server, or to handle network tasks such as DNS and DHCP, but not as a platform for running mission-critical enterprise applications. Solaris, AIX, or HP/UX typically get the nod
Re:Slashdotted (Score:3, Funny)
Re:Mystical Mozilla Speed Increases... (Score:5, Funny)
Garg
Re:interesting hardware comp (Score:4, Insightful)
The comparisons won't make much real-world sense until the evaluation is done using Intel's compiler for the Itanium tests. The GNU compiler is just not up to snuff at optimizing for Itanium's EPIC instruction set.
I would like to see Intel contribute Itanium optimizations to GNU, but I doubt this will happen since they sell a competing product.
Re:interesting hardware comp (Score:4, Interesting)
Where this really looks bad for Intel though is with their Itanium systems. Assuming that those 1.5GHz I2 processors are of the 6MB L3 cache variety, this is Intel's top-end chips. The servers probably won't have the performance of HP or SGI's I2 servers (IBM doesn't care much for the Itanium so they don't invest nearly as much time and effort in the designs as HP or SGI do), the chip still looks pretty weak.
Intel's saving grace here may be that the Itanium line of chips are VERY dependant on a good compiler, and chances are that these applications were compiled with GCC. Using Intel's ICC instead probably would boost performance by a noticeable margin, though a number of applications still won't compile with ICC from what I understand.
Re:Forgot DMA on the 2.4.23 box? (Score:3, Informative)
Re:RPM for Fedora (Yum) ?? (Score:4, Informative)
Re:RPM for Fedora (Yum) ?? (Score:4, Informative)
Re:HELP: Where can I browse Linux kernel sources? (Score:3, Informative)
That is possible. The best place I know is The Linux Cross-Reference [linux.no].