On 04/02/2011, at 21:48, Ivan Voras wrote:
>> I am wondering if this is a scheduler problem (or I am expecting too much :) 
>> in that it is not running my libusb thread reliably under load. The other 
>> possibility is that it is a USB issue, although I am looking at using 
>> isochronous transfers instead of bulk.
> 
> I'm surprised this isn't complained about more often - I also regularly see 
> that file system activity blocks other, non-file-using processes which are 
> mostly CPU and memory intensive (but since I'm not running realtime things, 
> it fell under the "good enough" category). Maybe there is kind of global-ish 
> lock of some kind which the VM or the VFS hold which would interfere with 
> normal operation of other processes (maybe when the processes use malloc() to 
> grow their memory?).

I guess for an interactive user anything less than 100msec is probably not 
noticeable unless it happens reasonably regularly when watching a video.

> Could you try 2 things:
> 
>       1) instead of doing file IO, could you directly use a disk device (e.g. 
> /dev/ad0), possibly with some more intensive utility than dd (e.g. "diskinfo 
> -vt") and see if there is any difference?

OK, I'll give it a shot.

>       2) if there is a difference in 1), try modifying your program to not 
> use malloc() in the critical path (if applicable) and/or use mlock(2)?

It doesn't allocate memory once it's going, everything is preallocated before 
the data transfer starts.

I'll have a go with mlock() and see what happens.

Thanks :)

--
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C






_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to