how to test the performance of PIO and DMA

Mark Hahn hahn at
Mon Feb 4 20:56:20 PST 2002

> > > Title: how to test the performance of PIO and DMA
> > 
> >         use hdparm for simple easy tests and watch your resulting
> >         transfer speed
> You may also want to monitor your CPU load: there is a huge difference
> in CPU overhead between PIO and DMA modes.

like night and day.  PIO is a dinosaur, and any vaguely modern machine 
doing PIO is criminally misconfigured.

> The standard hdparm test is
> too brief to see this,

I have no idea why you say this: when I run 
	/usr/bin/time hdparm -t /dev/hda
on the desktop I'm sitting at, I see around 24 MB/s and 9% CPU
in dma mode, versus 8.9 MB/s and 55% CPU after hdparm -d0
(note that the %CPU numbers are extremely approximate: the actual
ide-dma overhead is in the 3-5% range.)

> Moreover, I think that DMA gives you CRC checking for data going over
> the IDE cable while PIO does not.  DMA is a clear winner, unless you

udma, actually - plain old ide-dma doesn't do the CRC.
all machines should be using udma on ide, and should be using
ultra2 on SCSI (which adds CRC's as well.)

More information about the Beowulf mailing list