Mail Archives: djgpp/2004/12/20/15:02:51
> From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
> Date: Sun, 19 Dec 2004 16:12:26 CST
>
> Try this test. Open task manager so you can monitor CPU usage. Using the
> default DMA, read a 500MB file from disk. Using a modern disk this should
> take less than 10 seconds and use no more than 2-3 percent of the CPU.
What program does one use to read a file, but otherwise do nothing?
I used a native Windows port of GNU wc, which does some simple and
usually insignificant processing with the file it reads, and it took
it 20 seconds to read a 750MB file, using 20% of CPU. This is on a
2.8GHz XP box, FWIW. (And yes, "My Computer" does show that DMA is
being used, so sorry for spreading disinformation.) I didn't try to
reboot with PIO.
By contrast, on a 450MHz Pentium II MMX running Windows 98, where the
(bus-mastering) disk controller uses something called "dual fifo"
instead of DMA, reading a 515MB file via wc took 180 seconds (and the
CPU usage went through the roof). That's a factor of 13 for a sixfold
increase in CPU speed (but I think that we should compare PCI bus
speed, not CPU speed) -- shouldn't a decent DMA speed things up much
more?
- Raw text -