scx/scheds/rust
Tejun Heo 3db3257911 scx_layered: Find and kick an idle CPU from enqueue path
When a task is being enqueued outside wakeup path, ops.select_cpu() isn't
called, so we can end up in a situation where a newly enqueued task keeps
waiting in one of the DSQs while there are idle CPUs. Factor out idle CPU
selection path into pick_idle_cpu() and call it from the enqueue path in
such cases. This problem is shared across schedulers and likely needs a more
generic solution in the future.
2024-06-07 11:49:38 -10:00
..
scx_lavd scx: Unify loading and running boilerplate across rust schedulers 2024-06-03 12:25:41 -10:00
scx_layered scx_layered: Find and kick an idle CPU from enqueue path 2024-06-07 11:49:38 -10:00
scx_rlfifo scx: Unify loading and running boilerplate across rust schedulers 2024-06-03 12:25:41 -10:00
scx_rustland scx_rustland: never use a time slice that exceeds the default value 2024-06-06 17:56:23 +02:00
scx_rusty scx: Unify loading and running boilerplate across rust schedulers 2024-06-03 12:25:41 -10:00
meson.build scheds-rust: add explanation for chaining schedulers 2024-04-23 08:30:38 +08:00
README.md scx_lavd: add scx_lavd (Latency-criticality Aware Virtual Deadline) scheduler 2024-03-16 10:31:07 +09:00

RUST SCHEDULERS

Introduction

This directory contains schedulers with user space rust components.

The README in each scheduler directory provides some background and describes the types of workloads or scenarios they're designed to accommodate. For more details on any of these schedulers, please see the header comment in their main.rs or *.bpf.c files.

Schedulers