LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (http://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   slow file transfers between hard drives (http://www.linuxquestions.org/questions/linux-hardware-18/slow-file-transfers-between-hard-drives-188195/)

akshunj 05-31-2004 08:37 PM

slow file transfers between hard drives
 
I've had this problem for a while, but now it's really beginning to piss me off. I have two Maxtor hard drives, running Slack 9.1 (2.6.3 kernel). Occasionally, I have a need to transfer large files between hard drives. By large, I mean anything over 300 or 400 MB. Usually I initiate the transfer, and watch some blazing speeds (30 or 40 MB/s) for about 30 seconds, then the transfer rate drops to about 2 or 3 MB/s. My CPU usage is also throttled to 100% the whole time, and the whole system comes to a crawl. I've got an Athlon XP 2500+ with 1 gig Ram, and I'm sure this shouldn't be happening. I'm using ext3 on both drives, DMA is enabled, and here is the hdparm output for both:

bash-2.05b# hdparm /dev/hda

/dev/hda:
multcount = 0 (off)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 16383/255/63, sectors = 156301488, start = 0
bash-2.05b# hdparm -i /dev/hda

/dev/hda:

Model=ST380011A, FwRev=3.06, SerialNo=3JV0XB6J
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=156301488
IORDY=on/off, tPIO={min:240,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 2: 1 2 3 4 5 6
****************************************************************
bash-2.05b# hdparm /dev/hdb

/dev/hdb:
multcount = 0 (off)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 39703/16/63, sectors = 40020624, start = 0
bash-2.05b# hdparm -i /dev/hdb

/dev/hdb:

Model=Maxtor 2B020H1, FwRev=WAH21PB0, SerialNo=B1AC4B7E
Config={ Fixed }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
BuffType=DualPortCache, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=40020624
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=yes: disabled (255) WriteCache=enabled
Drive conforms to: ATA/ATAPI-6 T13 1410D revision 0: 1 2 3 4 5 6


Anybody have some advice on this? Thanks!

--Akshun J

akshunj 05-31-2004 08:39 PM

I just had a brainstorm while I was typing the original message. This probably has something to do with buffers! At least I hope. I'm a bit nervous experimenting with hdparm, so I'll wait for a reply or two first...

--Akshun J

faheyd 06-01-2004 02:33 AM

Hmm, I would try moving /dev/hdb to the secondary IDE, '/dev/hdd' and then do a large file transfer. I bet the problem vanishes. Remember that hda/hdb share the same irq and I/F. Handing data back and forth down the same cable slows things down a bit. But that's just a guess on my part. Tuning hdparms might help a bit, but it usually works fine out of the box on current equipment.

P.S. I just remembered something else, do a 'lspci -vv' and make sure dmesg show that you're detecting and using the right drivers for your IDE chipset, aka BX, VIA, etc. You might have to compile a custom kernel to get everything right.

akshunj 06-01-2004 11:19 AM

Thanks for the advice. I just read something similar on O'Reilly. I think I need a PCI add-on IDE controller, as my DVD burner is on hdb, and hdc would simply be a slave to its bandwidth. Thanks again...

--Akshun J


All times are GMT -5. The time now is 03:33 PM.