scx-upstream/scheds/rust
David Vernet 3d2507e6f2 rusty: Add separate flag for x NUMA greedy task stealing
In scx_rusty, a CPU that is going to go idle will attempt to steal tasks
from remote domains when its domain has no tasks to run, and a remote
domain has at least greedy_threshold enqueued tasks. This stealing is
temporary, but of course has a cost in that the CPU that's stealing the
task may cause it to suffer from cache misses, or in the case of
multi-node machines, remote NUMA accesses and working sets split across
multiple domains.

Given the higher cost of x NUMA work stealing, let's add a separate flag
that lets users tune the threshold for doing cross NUMA greedy task
stealing.

Signed-off-by: David Vernet <void@manifault.com>
2024-03-11 21:02:23 -07:00
..
scx_layered Add libbpf as a submodule 2024-03-01 12:39:35 -08:00
scx_rlfifo scx_rlfifo: print a performance warning banner 2024-03-05 19:36:17 +01:00
scx_rustland topology: Don't assume unique core IDs 2024-03-08 15:13:46 -06:00
scx_rusty rusty: Add separate flag for x NUMA greedy task stealing 2024-03-11 21:02:23 -07:00
meson.build scx_rlfifo: simple user-space FIFO scheduler written in Rust 2024-02-28 17:49:44 +01:00
README.md scx_rlfifo: simple user-space FIFO scheduler written in Rust 2024-02-28 17:49:44 +01: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