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

Andriy Gapon avg at FreeBSD.org
Wed Apr 4 16:45:20 UTC 2018


On 04/04/2018 16:19, Stefan Esser wrote:
> I have identified the cause of the extremely low I/O performance (2 to 6 read
> operations scheduled per second).
> 
> The default value of kern.sched.preempt_thresh=0 does not give any CPU to the
> I/O bound process unless a (long) time slice expires (kern.sched.quantum=94488
> on my system with HZ=1000) or one of the CPU bound processes voluntarily gives
> up the CPU (or exits).
> 
> Any non-zero value of preemt_thresh lets the system perform I/O in parallel
> with the CPU bound processes, again.

Let me guess... you have a custom kernel configuration and, unlike GENERIC
(assuming x86), it does not have 'options PREEMPTION'?

-- 
Andriy Gapon


More information about the freebsd-current mailing list