---
name: "sched_ule"
section: "4"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/sched_ule"
---

# sched\_ule(4)

ULE Scheduler

## NAME

**sched\_ule** – ULE Scheduler

## SYNOPSIS

**options SCHED\_ULE**

## DESCRIPTION

The **sched\_ule** scheduler is an experimental scheduler that provides a number of advanced scheduler features not present in [sched\_4bsd(4)](/sched_4bsd/4.md), the default system scheduler. These features address SMP and interactivity and include:

- Thread CPU affinity.

- CPU topology awareness, including for hyper-threading.

- Per-CPU run queues.

- Interactivity heuristics that detect interactive applications and schedules them preferentially under high load.

The following sysctls are relevant to the operation of **sched\_ule**:

- *kern.sched.name*

  This read-only sysctl reports the name of the active scheduler.

The **sched\_ule** scheduler is disabled by default as it is experimental. See the BUGS section for more information.

## SEE ALSO

[sched\_4bsd(4)](/sched_4bsd/4.md), [sysctl(8)](/sysctl/8.md)

## HISTORY

The **sched\_ule** scheduler first appeared in FreeBSD 5.1.

## AUTHORS

Jeff Roberson ⟨jeff@FreeBSD.org⟩

## BUGS

As an experimental scheduler, **sched\_ule** is not enabled by default due to a number of known issues, including weak performance with several known workloads, and reports of instability. Deployment of **sched\_ule** in production environments should be done cautiously.
