atom feed11 messages in org.freebsd.freebsd-multimediaRe: SCHED_ULE problem: slow single pr...
FromSent OnAttachments
Andrew ReillyAug 18, 2008 7:49 pm 
DieterAug 19, 2008 12:57 am 
Jeff RobersonAug 19, 2008 12:59 am 
Andrew ReillyAug 19, 2008 6:39 am 
Jeff RobersonAug 21, 2008 12:46 am 
Andrew ReillyAug 25, 2008 4:59 pm 
Andrew ReillyAug 27, 2008 4:38 pm 
Andrew ReillyAug 27, 2008 9:03 pm 
Gary JennejohnAug 28, 2008 3:36 am 
Andrew ReillyAug 28, 2008 5:41 am 
Andrew ReillyAug 28, 2008 3:52 pm 
Subject:Re: SCHED_ULE problem: slow single processor, realtime prio vs network stack
From:Gary Jennejohn (gary@freenet.de)
Date:Aug 28, 2008 3:36:45 am
List:org.freebsd.freebsd-multimedia

On Thu, 28 Aug 2008 09:38:31 +1000 Andrew Reilly <andr@areilly.bpc-users.org> wrote:

On Wed, Aug 20, 2008 at 09:47:01PM -1000, Jeff Roberson wrote:

On Tue, 19 Aug 2008, Andrew Reilly wrote:

I haven't tried nice -20 because I don't want the priority to drift or change, which is something that I thought the normal levels did. I'll give it a go though, and report back.

With such a low cpu utilization I wouldn't expect it's the scheduling algorithm. It may be a difference in preemption settings. Is preemption enabled in both kernels?

I've just done a set of tests with setprio(... -20) vs rtprio(...10), and with SCHED_ULE vs SCHED_4BSD. The results are essentially as I reported before except that regular prio -20 seems to be just as reliable as rtprio 10 under 4BSD and just as unhelpful under _ULE.

To summarise:

SCHED_ULE: rtprio 10: network activity causes audio underruns SCHED_ULE: setprio -20: network activity causes audio underruns SCHED_4BSD: rtprio 10: no audio underruns SCHED_4BSD: setprio -20: no audio underruns

For what it's worth, my audio buffering setup has a fragment size of 0.7ms, but several buffers. How is device driver activity prioritized? Does the scheduler in use effect how device interrupts are handled, as well as user-land tasks?

I have kernels built with both schedulers sitting arround on this machine now, so it's easy to switch back and forth if there are some specific tests that I could do or other information that I could provide.

Ah yes, but do you have options PREEMPTION set, which was Jeff's question?