[NTLUG:Discuss] ata xfer speed question

Bryan J. Smith b.j.smith at ieee.org
Sat Aug 27 22:39:29 CDT 2005


"./aal" <al_h at technologist.com> wrote:
> when I start a large directory copy (a few gigs) the speed
> kde reports is 40-50MB/s.....this quickly drops to 30-
> 70KB/s.

That's because the initial report is pure memory buffer, not
actual drive-to-drive transfer.  Once the memory buffer is
full, then you're seeing the _actual_ transfer.

> 2.6.11
> controller is a NForce2 ata
> drives are WD ata100(on same channel) w/8MB cache

Bam!  Problem right there.  ATA is not SCSI.  You can't do
device-to-device transfers,

The master and slave devices are constantly disconnecting,
renegotiating and reconnecting -- one writing to memory, the
other reading from memory.

ATA specifications for DMA only support one channel to one
device.  Enhanced IDE (EIDE) and its Programmed I/O (PIO) is
the only specification that supports the master/slave.  The
legacy PIO is commonly mistaken as a valid configuration
because most ATA DMA drives can still communicate via PIO --
and offer disconnect features to they can assume control of
the channel from the master (although inter-vendor issues
still occur).

Transfers are much, much faster (like an order of magnitude)
when ATA devices are on their own channels, and the drives do
not have to disconnect/renegotiate/reconnect the channel
continuously.

In a nutshell, unless your device is an old EIDE PIO-only
device, don't put more than one ATA device on a channel. 
Typically you can get away with this for older ATAPI optical
drives that only do 5MBps or slower, but not with today's
50+MBps fixed disks.  ;->


-- 
Bryan J. Smith                | Sent from Yahoo Mail
mailto:b.j.smith at ieee.org     |  (please excuse any
http://thebs413.blogspot.com/ |   missing headers)




More information about the Discuss mailing list