RE: usb video capture issue due to uvc_complete callback spends more time

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

 



Hi,

On Thu, Mar 28, 2013 at 9:27 PM, Felipe Balbi <balbi@xxxxxx> wrote:
On Thu, Mar 28, 2013 at 03:23:46PM +0200, Felipe Balbi wrote:
> Hi,
>
> On Thu, Mar 28, 2013 at 08:53:03PM +0800, Ming Lei wrote:
> > On Thu, Mar 28, 2013 at 8:30 PM, B, Ravi <ravibabu@xxxxxx> wrote:
> > >
> > > For example, in one iteration I have observed, the time taken by
> > > uvc_video_decode_isoc() was 2175 usec. In this maximum amount of
> > > time was consumed by uvc_video_decode_data() around 1792 usec.
> >
> > uvc_video_decode_data() is basically a memcpy() from coherent buffer to
> > normal buffer.
>
> if that's the case, this should show, right ?

> Maybe not, it might be worse(per my previous test on Pandaboard A1) to
> change to DMA streaming buffer, since DMA unmapping has become
> expensive too for reading from device after invalidating buffer is added
> to handle speculative prefetching, and before that, DMA unmapping was
> basically a nop on ARM.

> But you guys can do the test again, or do some analysis about such slow
> memcpy() on coherent buffer.

Since the uvc_video_complete() callback handler called from interrupt context, video post processing or memcpy can be deferred to tasklet or bottom half, rather than doing it in interrupt context.

>It is not odd to see I/O performance isn't very good on ARM...

--
Ravi B
--
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