[plug] hdparm troubles
Steve Boak
sboak at westnet.com.au
Sat Jul 17 17:47:43 WST 2004
On Sat, 17 Jul 2004 03:28 pm, Craig Ringer wrote:
[...]
> Have you tried flipping unmasked interrupts (-u) on?
it is on by default: (and makes no difference if I turn it off)
min:~# hdparm /dev/hda
/dev/hda:
multcount = 16 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 23937/16/63, sectors = 156250000, start = 0
> I'd also try
> enabling DMA without trying to set the speed (let the disk/interface
> decide it) by omitting the -X68.
min:~# hdparm -c1 -m16 -d1 /dev/hda
/dev/hda:
setting 32-bit IO_support flag to 1
setting multcount to 16
setting using_dma to 1 (on)
multcount = 16 (on)
IO_support = 1 (32-bit)
using_dma = 1 (on)
min:~# hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 192 MB in 2.00 seconds = 96.00 MB/sec
Timing buffered disk reads: 12 MB in 3.17 seconds = 3.79 MB/sec
> I'd also try 16 bit mode .. just in case there's some stupid driver or
> controller bug.
min:~# hdparm -c0 -m16 -d1 /dev/hda
/dev/hda:
setting 32-bit IO_support flag to 0
setting multcount to 16
setting using_dma to 1 (on)
multcount = 16 (on)
IO_support = 0 (default 16-bit)
using_dma = 1 (on)
min:~# hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 176 MB in 2.02 seconds = 87.13 MB/sec
Timing buffered disk reads: 12 MB in 3.36 seconds = 3.57 MB/sec
> On the same line of
> thinking, I'd also run some tests with multicount disabled.
Also makes no difference.
>
> When you're doing the testing, what sort of CPU load do you see?
>
Cache test 100% cpu usage, disk reads about 10-20%
> Have you tried a recent kernel? Perhaps the via IDE drivers have
> improved for these boards. IIRC they're known to be a little eccentric
> and have had Linux support issues in the past.
OK, how hard can it be to move up to 2.6 :-)
> Do the boards have an IO-APIC? If yes, try booting with 'noapic' in case
> it's braindead.
Don't know, but tried it anyway - no difference :-(
> Check /proc/interrupts to see if your IDE controller is
> being forced to share interrupts with anything.
min:~# cat /proc/interrupts
CPU0
0: 208512 XT-PIC timer
1: 9269 XT-PIC keyboard
2: 0 XT-PIC cascade
5: 1513 XT-PIC VIA686A
9: 5229 XT-PIC usb-uhci, usb-uhci
10: 0 XT-PIC eth1
11: 388 XT-PIC eth0
12: 29373 XT-PIC PS/2 Mouse
14: 62866 XT-PIC ide0
NMI: 0
LOC: 0
ERR: 0
Does XT-PIC mean anything significant?
min:~# cat /proc/dma
4: cascade
How about cascaded dma? Is this important?
> Do you have anything
> else in the system that might be generating heavy interrupt loads (TV
> input cards, for example)?
Nope - only room for one extra RTL PCI NIC card.
From top: Cpu(s): 3.2% user, 3.2% system, 0.0% nice, 93.6% idle
>
> > min:~# hdparm -Tt /dev/hda
> > /dev/hda:
> > Timing buffer-cache reads: 192 MB in 2.03 seconds = 94.58 MB/sec
> > Timing buffered disk reads: 12 MB in 3.20 seconds = 3.75 MB/sec
> >
> > 3.75 MB/sec ???
>
> Wow.
>
> --
> Craig Ringer
Thanks everyone.
I have found a couple of mentions of similar, though not exactly the same,
problems through google - but unfortunately no answers yet.
I'll leave the settings with dma off and put up with ~6MB/sec for the moment
until I decide if I should upgrade the kernel. At least it's twice as fast as
it was before. Thank goodness I don't have to trawl terrabytes of data that
some of you guys mention in passing as though it was an everyday
occurrence :-)
Steve
--
VOIP-Phone - Free World Dialup number 454566 - Via 128k ISDN
"Most men occasionally stumble over the truth, but most pick themselves
up and continue on as if nothing had happened." - Winston Churchill
More information about the plug
mailing list