Re: mass storage behaviour

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 16 Oct 2015, at 18:06, Felipe Balbi <balbi@xxxxxx> wrote:

> 
> Hi,
> 
> Paul Jones <p.jones@xxxxxxxxxx> writes:
>> First DMA to first IRQ = 116us.
>> 
>> Second DMA to second IRQ = 107us.
>> 
>> These seem fairly stable as the last request in a 500+MB transfer had
>> exactly the same timings.
>> 
>> Each IRQ is taking around 14us to handle, during which most of the
>> time the ep->dev->lock is locked (only released in the done function
>> whilst calling the callback).
>> 
>> Setting up DMA is taking around 5us to handle.
>> 
>> Measured end-to-end performance: 135MB/s (145MB/s with tweaked
>> max_sector).  That’s not bad given that the DMA is only managing
>> 153MB/s.
>> 
>> Yousaf: is there a way to get an IRQ on a stall/fifo full/etc. to see
>> if some throttling is going on? Any other parts of the code that would
>> be useful to have timing on?
>> 
>> Are there any tools to measure host to device raw performance (max
>> bulk throughput)?
> 
> max bulk or max MSC BOT ? For MSC you can use dd. For max bulk, you'd
> have to write something up with libusb and probably hack f_sourcesink.c
> a bit to always requeue a completed usb_request and never process anything.
All my measurements so far are using dd to establish max MSC BOT.

I am looking for max bulk to see the limits of the hardware, before I start complaining too much about max MSC BOT :)
It looks like f_sourcesink will just “swallow” any bulk packets sent to the gadget and will generate simple packet content when read from?
Do you know of any libusb sample code that can do reading/writing from an f_sourcesink gadget?

Paul.

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux