Slow/broken USB and Ethernet on Snowballs/Origen boards?

Jannis Pohlmann jannis.pohlmann at codethink.co.uk
Thu Mar 15 10:09:34 UTC 2012


Hey,

On 03/15/2012 01:39 AM, Tony Mansson wrote:
> Hi,
> 
> This is interesting. I'd like to reproduce the Ethernet speed tests.
> 
> Do you have the exact command lines?

Sure. You'll need two machines, on being the board. Both need to be in
the same 100 or 1000 MBit/s LAN.

On the receiver's end, run:

  netcat -l 8000 > /dev/null

This will listen for incoming data on a TCP socket on port 8000. Then,
given the receiver's IP address, run the following command on the
sender's end:

  dd if=/dev/zero bs=1024k count=256 > /dev/tcp/<RECEIVER IP>/8000

Note that "/dev/tcp/XYZ/8000" is a bash-specific feature.

When this command has finished, it will tell you the transfer rate. You
can cancel it anytime and it will give you the same information. But be
sure not to cancel too early as that makes the measurement less
reliable. Obviously, you can change count= to whatever you want. E.g.
with the Origen, you'd probably want to only send 10-100 MByte.

Also, you can swap receiver and sender to make sure that running netcat
on the board is not causing things to slow down.

Not the best benchmark in the world, but it's simple and you can run it
as often if you want to make it more reliable.

Hope that helps,
Jannis

> ---------- Forwarded message ----------
> From: Jannis Pohlmann <jannis.pohlmann at codethink.co.uk>
> Date: 14 March 2012 21:04
> Subject: Slow/broken USB and Ethernet on Snowballs/Origen boards?
> To: linaro-dev at lists.linaro.org
> 
> 
> Hi,
> 
> I am currently playing with a couple of the development boards for which
> there are Linaro hwpacks and LEBs. Since what I am trying to do requires
> a lot of disk and network I/O, I've been paying special attention to the
> data transfer rates I can get out of these boards.
> 
> Below is a brief summary of my findings.
> 
> 1) i.MX 53
> 
>  * disk I/O using an external SSD drive is very good; good enough to
>    not require further measurements
> 
>  * network I/O is approximately 9-10 MByte/s (perhaps more) which
>    seems ok given the 100 MBit/s Ethernet interface
> 
> 2) Snowball (PDK, version 8)
> 
>  * it seems to be impossible to get the USB OTG host mode to work,
>    therefore I could not test disk I/O with a USB drive; it appears
>    the OTG port on the version 8 board does not even have enough power
>    for a powered USB to actually go online (I am unaware of the
>    details of how this works unfortunately)
> 
>  * performing network I/O with netcat casues netcat, ksoftirqd and
>    kworker to use ~33% of the CPU each, resulting in 100% CPU usage
>    only to handle the network data transfer
> 
>  * the resulting network transfer rate is about 5.5 MByte/s, which
>    is significantly less than what the 100 MBit/s Ethernet interface
>    should be able to produce
> 
> 3) Origen
> 
>  * the internal USB hub runs at Full Speed (12 MBit/s), resulting in a
>    maximum USB disk I/O of 1.5 MByte/s
> 
>  * since the board does not feature Ethernet itself, I tried to attach
>    a USB Ethernet controller to it, but of course the transfer rate
>    through that is by the I/O upper limit of the USB hub
> 
>  * I did not test wireless but it is not feasible for what I am trying
>    to do anyway
> 
> I guess not all of this is surprising. The i.MX performs quite well but
> unfortunately the CPU is quite slow compared to the others. However, I
> wonder whether the USB OTG host mode issue on the Snowball is a known
> problem? Also, network I/O occupying all of the CPU seems to be a bug or
> at least a dodgy driver. About the Origen: I assume there is nothing
> that can be done to have High Speed USB on it?
> 
> Thanks in advance! If anyone needs me to provide more information, I'll
> gladly try to do that.
> 
> Regards,
> Jannis
> 
> _______________________________________________
> linaro-dev mailing list
> linaro-dev at lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/linaro-dev



More information about the linaro-dev mailing list