USB Performance on Raspberry Pi

Peter Jeremy peter at rulingia.com
Sun Jul 7 03:18:03 UTC 2013


Hi Hans,

USB performance on the Raspberry Pi is rather lacking.  This is important
because pretty much everything goes via USB.  Do you have any suggestions
on how to fix the bottlenecks?  I suspect one is that FreeBSD is using
PIO, whereas Linux is using DMA.

I've previously commented about the sawtooth pattern in ping times:
64 bytes from 192.168.123.231: icmp_seq=6 ttl=64 time=2.701 ms
64 bytes from 192.168.123.231: icmp_seq=7 ttl=64 time=1.465 ms
64 bytes from 192.168.123.231: icmp_seq=8 ttl=64 time=10.589 ms
64 bytes from 192.168.123.231: icmp_seq=9 ttl=64 time=9.688 ms
64 bytes from 192.168.123.231: icmp_seq=10 ttl=64 time=8.673 ms
64 bytes from 192.168.123.231: icmp_seq=11 ttl=64 time=7.330 ms
64 bytes from 192.168.123.231: icmp_seq=12 ttl=64 time=6.857 ms
64 bytes from 192.168.123.231: icmp_seq=13 ttl=64 time=5.946 ms
64 bytes from 192.168.123.231: icmp_seq=14 ttl=64 time=3.955 ms
64 bytes from 192.168.123.231: icmp_seq=15 ttl=64 time=2.079 ms
64 bytes from 192.168.123.231: icmp_seq=16 ttl=64 time=1.072 ms

Whereas pinging a Linux RPi gives:
round-trip min/avg/max/stddev = 0.276/0.373/0.455/0.049 ms

yongari@ gave me same patches for the SMSC NIC but they didn't have
any noticable effect.

And the network throughput is also well below what Linux can achieve.

If I connect an external USB disk to a Linux RPi, I get 20.6 MBps
read.  The same disk on FreeBSD RPi gives 6.3 MBps - with ~50%
interrupt time.

-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20130707/b14ac2d1/attachment.sig>


More information about the freebsd-arm mailing list