[nSLUG] 2.6 kernel performance
donald.teed at gmail.com
Tue Jun 21 10:17:04 ADT 2005
My Debian home server is set up on a regular ext3
partition and has a couple of software raid 5 partitions
for data. While I still have an ability to boot up
the Gentoo raid 1 partition, I though it would be a good
time to experiment with a 2.6 kernel from Debian.
This is a machine that has always run 2.4 kernel,
dual PIII with BX chipset. I've used a 2.6 kernel
before, but never with software raid (md) and SMP.
I'm not interested in tweaking it for desktop performance,
but rather for disk I/O and network performance.
Last night I tried building a vanilla 2.6 kernel a few times,
experimenting with I/O scheduler settings and such.
There are two things that happen with 2.6.12 which
One is the load factor reporting. The first number in the series
seems to "start" at 1 rather than 0. When the machine is
relatively idle with a 2.4 kernel, I see numbers like : 0.04, 0.03, 0.00
When I run a 2.6 kernel, the first number is at least 1.
The top report shows processors that are about 98% idle
while the load number is like that.
The other issue is hdparm performance numbers. With the same
software raid devices, the hdparm -Tt numbers come in much
lower with 2.6 than they do with 2.4 kernel.
In 2.4.31 the hdparm shows about 65 MB/sec, while in 2.6.12,
I'm seeing something around 40 MB/sec. Of course this
doesn't tell me anything about how it would perform under
heavy load, which might be what the 2.6 kernel is tweaked
to do, but in my case there will never be a heavy load, so I
want fast performance for 2 or 3 users of samba, mail, etc.
I have CONFIG_PREEMPT off, CONFIG_IOSCHED_NOOP=y
I had also tried CONFIG_IOSCHED_DEADLINE , and for some
reason all of the load factor numbers were always over 1 while
that was on.
I see that I should have used an "elevator=cfq" kernel option
along with those IO scheduler options.
I'm not up on the technical bits of how they work. I see cautions related
to performance under anticipatory IO scheduler and RAID, and
I've stayed away from that option.
Does anyone have a tip on the best kernel options for SMP and software RAID
over IDE? Perhaps I should just try all of the schedulers off.
More information about the nSLUG