xref: /freebsd/share/man/man4/sched_ule.4 (revision f0a75d274af375d15b97b830966b99a02b7db911)
1.\" Copyright (c) 2005 Robert N. M. Watson
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD$
26.\"
27.Dd April 7, 2005
28.Os
29.Dt SCHED_ULE 4
30.Sh NAME
31.Nm sched_ule
32.Nd ULE scheduler
33.Sh SYNOPSIS
34.Cd "options SCHED_ULE"
35.Sh DESCRIPTION
36The
37.Nm
38scheduler
39is an experimental scheduler that provides a number of advanced scheduler
40features not present in
41.Xr sched_4bsd 4 ,
42the default system scheduler.
43These features address SMP and interactivity and include:
44.Pp
45.Bl -bullet -compact -offset indent
46.It
47Thread CPU affinity.
48.It
49CPU topology awareness, including for hyper-threading.
50.It
51Per-CPU run queues.
52.It
53Interactivity heuristics that detect interactive applications and schedules
54them preferentially under high load.
55.El
56.Pp
57The following sysctls are relevant to the operation of
58.Nm :
59.Bl -tag -width indent
60.It Va kern.sched.name
61This read-only sysctl reports the name of the active scheduler.
62.El
63.Pp
64The
65.Nm
66scheduler
67is disabled by default as it is experimental.
68See the
69.Sx BUGS
70section for more information.
71.Sh SEE ALSO
72.Xr sched_4bsd 4 ,
73.Xr sched_core 4 ,
74.Xr sysctl 8
75.Sh HISTORY
76The
77.Nm
78scheduler first appeared in
79.Fx 5.1 .
80.Sh AUTHORS
81.An Jeff Roberson
82.Aq jeff@FreeBSD.org
83.Sh BUGS
84As an experimental scheduler,
85.Nm
86is not enabled by default due to a number of known issues, including weak
87performance with several known workloads, and reports of instability.
88Deployment of
89.Nm
90in production environments is not recommended at this time.
91