libusb performance on 8.1
Hans Petter Selasky
hselasky at c2i.net
Thu Feb 3 07:22:50 UTC 2011
On Thursday 03 February 2011 07:56:25 Daniel O'Connor wrote:
> On 28/01/2011, at 18:28, Hans Petter Selasky wrote:
> > For this kind of applications ISOCHRONOUS transfers should be used. Then
> > you can have a double buffer guard in the range 1-56ms, regardless of
> > the buffer size the hardware uses.
>
> That sounds nice :)
> I am trying to get it working at the moment, however I'm only finding it
> capable of 4 or 8 Mb/sec (512 or 1024 byte EP), although perhaps I don't
> understand how to do ISO transfer properly.
Hi,
You need to set the multiplier to 2 or 3. Then you get 3*1024 bytes at
maximum.
>
> BTW do you have a feel for the latency in bulk vs iso? I currently have
> 5-10 msec of buffering in the hardware which I plan on increasing but I'm
> not sure what a reasonable amount would be :)
>
> I put a logic analyser on my board and it shows fairly regular requests
> from the hardware (16kbyte bursts every 2msec or so) however I see
> glitches occasionally - 5.5ms, 7.5ms.
>
> I am not sure if they are attributable to userland scheduling (in which
> case writing a kernel driver should help) or some subtlety in USB itself.
Are you using two isochronous transfers or just one?
--HPS
More information about the freebsd-usb
mailing list