[ltp] Re: T30: Improve disk performance?

Daniel Pittman linux-thinkpad@linux-thinkpad.org
Tue, 20 Apr 2004 14:36:34 +1000


On Tue, 20 Apr 2004, Atul Chitnis wrote:
> Has anyone had any luck improving the hard disk performance of the
> 40GB disk in the T30?

Your figures look about right; my 60GB drives in an A31p give:

/dev/hda:
 Timing buffer-cache reads:   880 MB in  2.00 seconds = 439.85 MB/sec
 Timing buffered disk reads:   68 MB in  3.10 seconds =  21.92 MB/sec
/dev/hdc:
 Timing buffer-cache reads:   744 MB in  2.01 seconds = 370.76 MB/sec
 Timing buffered disk reads:   96 MB in  3.01 seconds =  31.88 MB/sec

The performance there is about what I would expect in terms of a laptop
hard drive, given that this is an active system, and that the 60GB has a
higher platter density.

That said:

[...]

> /dev/hda:
>  multcount    = 16 (on)

If you run a recent later kernel, this figure went from sectors
(512 bytes per unit) to bytes, so my performance sucked until I made
mine 16K...

>  IO_support   =  3 (32-bit w/sync)

The 'sync' sequence is reputed to be slightly slower, and I don't
believe that it is needed.

>  unmaskirq    =  0 (off)

That is going to hurt a bit - if the IRQ is not unmasked, you see
potentially very high latency with interrupts disabled.

Try setting that to 1 at boot time, which should help some.

[...]

> Are there any tried and tested hdparm tweaks that could improve 
> performance in any way? The disk feels major sluggish.

Unmasking the IRQ should help a bit, but mostly there isn't anything
much that can be done.  More memory should make things nicer by caching
more. :)

Also, XFS "felt" a lot faster, to me, than ext3 does - but I use ext3
because it is far more reliable on a machine that might crash
occasionally.

> Possibly related to this - is it true that turning on SCSI emulation
> for the cdwriter causes DMA to be turned off, drastically reducing
> read performance?

I can't comment on that, but I can suggest that using the IDE-SCSI code
to talk to your CD writer is not a good idea.

The best, and recommended by the developers of the IDE and CD layer, way
to do this is:

] cdrecord dev=/dev/hdc ...

This has worked for me reliably forever, and no sign of IDE-SCSI
anywhere near my system.

         Daniel

-- 
It is a sin to believe evil of others, but it is seldom a mistake.
        -- H.L. Mencken