Quantcast
Channel: MarsHut
Viewing all articles
Browse latest Browse all 6551

USB Performance on Raspberry Pi

$
0
0
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.

Viewing all articles
Browse latest Browse all 6551

Trending Articles