[Soekris] No HD DMA? (Was: Harddisk slow)
Igor Sobrado
igor at string1.ciencias.uniovi.es
Tue Jan 30 13:34:08 UTC 2007
In message <20070130124947.GA1800 at mathom.us>, Michael Stone writes:
> If it was running without DMA it would be slower. Your CPU utilization
> would likely be lower with a larger dd block size (e.g., bs=32768) so
> that you're not making so many syscalls. This isn't an IO monster,
> though, and no amount of tweaking will make it one--if that's what you
> need, you need different hardware.
Same performance results here with OpenBSD 4.0. To make measurements
more accurate the filesystem in use is not mounted with soft updates.
For write transactions (standard block size):
# dd if=/dev/zero of=test.txt count=65535
65535+0 records in
65535+0 records out
33553920 bytes transferred in 7.080 secs (4738864 bytes/sec)
For read transactions:
# dd if=test.txt of=/dev/null
65535+0 records in
65535+0 records out
33553920 bytes transferred in 3.981 secs (8427760 bytes/sec)
With a larger block size. Writing:
# dd if=/dev/zero of=test.txt bs=32768 count=4093
4093+0 records in
4093+0 records out
134119424 bytes transferred in 9.651 secs (13896449 bytes/sec)
Reading:
# dd if=test.txt of=/dev/null bs=32768
4093+0 records in
4093+0 records out
134119424 bytes transferred in 6.815 secs (19679637 bytes/sec)
So, the bottleneck is not the maximum HDD controller throughput.
Another problem (unrelated with the one this thread focuses)
and probably fixable in a future firmware upgrade, is that the
comBIOS does not return the right size for disks larger than
64 GB. If the integer in question is incremented past this
maximum value, it wraps providing an incorrect size. It would
be nice having this bug fixed, as disks larger than 64 GB
are very common these days and supported by the net4801.
By the way, I hope that these HDD drives are enhanced availability
ones. Most 2.5 inch drives are not ready for 24/7 use and will
break after some months of continuous use. Think on blade-like
drives instead.
The disk I am using is a Hitachi Travelstar E7K100:
# dmesg | grep ^wd0
wd0 at pciide0 channel 0 drive 0: <HTE721080G9AT00>
wd0: 16-sector PIO, LBA48, 76319MB, 156301488 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
Cheers,
Igor.
More information about the Soekris-tech
mailing list