How fast is the OHCI driver?
Bernd Walter
ticso at cicely7.cicely.de
Fri Mar 19 10:30:04 UTC 2010
On Fri, Mar 19, 2010 at 10:32:51AM +0100, Sebastian Huber wrote:
> On 03/16/2010 07:01 PM, Bernd Walter wrote:
> > On Tue, Mar 16, 2010 at 04:46:19PM +0100, Sebastian Huber wrote:
> [...]
> >> Has someone values from other FreeBSD based systems with an OHCI controller?
> >
> > I can easily get more with AT91RM9200 (also ARM9 with OHCI).
> > A short test:
> > [73]chipmunk.cicely.de# dd if=/dev/da0 bs=128k of=/dev/null count=100
> > 100+0 records in
> > 100+0 records out
> > 13107200 bytes transferred in 16.762732 secs (781925 bytes/sec)
> >
> > Speedwise the system is on the lowest end of ARM9 systems we support.
> >
>
> Thank you for your reference values. Actually my test setup on the FreeBSD
> based system was bad. I now have the following values:
>
> TSZ: Size of one transfer block in bytes
> TIME: Time to transfer 1024 blocks in seconds
> RATE: Bytes transfered per second
>
> TSZ TIME RATE
> 512 6.15 85250
> 1024 7.17 146244
> 2048 8.20 255750
> 4096 10.24 409600
> 8192 13.38 626951
> 16384 21.50 780335
> 32768 36.92 908841
> 65536 67.92 988057
> 131072 131.39 1021521
> 262144 259.00 1036430
> 524288 514.16 1044170
> 1048576 964.04 1048532
>
> So it looks very good if you use the right transfer size.
That's normal - Linux uses block devices, which prereads bigger blocks,
while we have character devices and have physical control.
The story isn't a problem if you use a filesystem, because it does
bigger reads.
The consumer code likely knows better what is worth to be preread and/or
cached.
--
B.Walter <bernd at bwct.de> http://www.bwct.de
Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.
More information about the freebsd-usb
mailing list