Is kern.sched.preempt_thresh=0 a sensible default?

Gary Jennejohn gljennjohn at gmail.com
Fri Jun 8 14:40:37 UTC 2018


On Fri, 8 Jun 2018 17:18:43 +0300
Andriy Gapon <avg at FreeBSD.org> wrote:

> On 08/06/2018 15:27, Gary Jennejohn wrote:
> > On Thu, 7 Jun 2018 20:14:10 +0300
> > Andriy Gapon <avg at FreeBSD.org> wrote:
> >   
> >> On 03/05/2018 12:41, Andriy Gapon wrote:  
> >>> I think that we need preemption policies that might not be expressible as one or
> >>> two numbers.  A policy could be something like this:
> >>> - interrupt threads can preempt only threads from "lower" classes: real-time,
> >>> kernel, timeshare, idle;
> >>> - interrupt threads cannot preempt other interrupt threads
> >>> - real-time threads can preempt other real-time threads and threads from "lower"
> >>> classes: kernel, timeshare, idle
> >>> - kernel threads can preempt only threads from lower classes: timeshare, idle
> >>> - interactive timeshare threads can only preempt batch and idle threads
> >>> - batch threads can only preempt idle threads    
> >>
> >>
> >> Here is a sketch of the idea: https://reviews.freebsd.org/D15693
> >>  
> > 
> > What about SCHED_4BSD?  Or is this just an example and you chose
> > SCHED_ULE for it?  
> 
> I haven't looked at SCHED_4BSD code at all.
> 

I hope you will eventually because that's what I use.  I find its
scheduling of interactive processes much better than ULE.

-- 
Gary Jennejohn


More information about the freebsd-current mailing list