On Thu, 10 Feb 2000 [EMAIL PROTECTED] wrote: > On Thu, Feb 10, 2000 at 08:40:29AM -0700, Rick Macdonald generated a stream > of 1s and 0s: > > > > I added a Maxtor 27GB 7200rpm ATA66 drive to my P200MMX when I upgraded to > > potatos and kernel 2.2.14. > > > > My motherboard (ASUS TX97-E) only supports udma mode 2 (33MB/sec), but I > > find that this drive and my old WD 4GB (no UDMA) both show the same speed > > of about 9.4MB/sec with hdparm -t. Even if the new drive is the only drive > > on the primary IDE interface.
> You can't expect any improvents unless you turn multcount to 16 or to > whatever your drive supports, and switch I/O into 32bit mode. Just with > those two turned on, my WD goes from 6 to 12 MB/s without using DMA. > Also I recommend setting unmaskirq to on, because that frees up your CPU > when it does disk transfer; the multcount setting saves you the number > of interrupts per transfer the size of this setting (i.e. 1 interrupt per 16 > blocks instead of 16 interrupts per 16 blocks) that you set it to, so it's > very important, so is 32 bit transfer mode. The 16 bit mode is really an > archaic setting > dating back to early Pentium and 486 machines, this issue really needs > to be addressed on distribution level, since most people don't bother > playing with hdparm at all, they're always SLOW. What's ironic, is you > can configure your kernel to enable DMA, but can't enable 32 bit I/O. Sheesh! That sounded so good, but as shown below, those settings made no difference. I tried again with just the one drive on the rimary IDE (no slave). I tried -X34 too, but it hung the machine. Fortunately, no damage was done when I hit the reset switch. Any other ideas? Could I be missing kernel config options, or would hdparm know that and not set the values? timshel# hdparm -m16 -c1 -u1 -i -v /dev/hda /dev/hda: setting 32-bit I/O support flag to 1 setting multcount to 16 setting unmaskirq to 1 (on) multcount = 16 (on) I/O support = 1 (32-bit) unmaskirq = 1 (on) using_dma = 1 (on) keepsettings = 0 (off) nowerr = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 3322/255/63, sectors = 53369568, start = 0 Model=Maxtor 92732U8, FwRev=RA530JN0, SerialNo=H8059G4C Config={ Fixed } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57 BuffType=3(DualPortCache), BuffSize=2048kB, MaxMultSect=16, MultSect=16 DblWordIO=no, OldPIO=2, DMA=yes, OldDMA=0 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=53369568 tDMA={min:120,rec:120}, DMA modes: mword0 mword1 mword2 IORDY=on/off, tPIO={min:120,w/IORDY:120}, PIO modes: mode3 mode4 UDMA modes: mode0 mode1 *mode2 mode3 mode4 timshel# hdparm -t /dev/hda;hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 64 MB in 6.99 seconds = 9.16 MB/sec /dev/hda: Timing buffered disk reads: 64 MB in 6.77 seconds = 9.45 MB/sec You have mail in /var/spool/mail/rickm timshel# hdparm -m0 -c0 -u0 -i -v /dev/hda /dev/hda: setting 32-bit I/O support flag to 0 setting multcount to 0 setting unmaskirq to 0 (off) multcount = 0 (off) I/O support = 0 (default 16-bit) unmaskirq = 0 (off) using_dma = 1 (on) keepsettings = 0 (off) nowerr = 0 (off) readonly = 0 (off) readahead = 8 (on) geometry = 3322/255/63, sectors = 53369568, start = 0 Model=Maxtor 92732U8, FwRev=RA530JN0, SerialNo=H8059G4C Config={ Fixed } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57 BuffType=3(DualPortCache), BuffSize=2048kB, MaxMultSect=16, MultSect=off DblWordIO=no, OldPIO=2, DMA=yes, OldDMA=0 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=53369568 tDMA={min:120,rec:120}, DMA modes: mword0 mword1 mword2 IORDY=on/off, tPIO={min:120,w/IORDY:120}, PIO modes: mode3 mode4 UDMA modes: mode0 mode1 *mode2 mode3 mode4 timshel# hdparm -t /dev/hda;hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 64 MB in 6.90 seconds = 9.28 MB/sec /dev/hda: Timing buffered disk reads: 64 MB in 6.93 seconds = 9.24 MB/sec ...RickM...