Re-exportsยง
pub(crate) use libbpf_rs::MapCore as _;๐pub(crate) use scx_utils::NR_CPU_IDS;๐pub(crate) use scx_utils::NR_CPUS_POSSIBLE;๐pub(crate) use scx_utils::scx_enums;๐pub(crate) use std::collections::BTreeMap;๐pub(crate) use std::collections::BTreeSet;๐pub(crate) use std::collections::HashMap;๐pub(crate) use std::collections::HashSet;๐pub(crate) use std::ffi::CString;๐pub(crate) use std::fs;๐pub(crate) use std::io::Write;๐pub(crate) use std::mem::MaybeUninit;๐pub(crate) use std::ops::Sub;๐pub(crate) use std::path::Path;๐pub(crate) use std::path::PathBuf;๐pub(crate) use std::sync::Arc;๐pub(crate) use std::sync::atomic::AtomicBool;๐pub(crate) use std::sync::atomic::Ordering;๐pub(crate) use std::thread::ThreadId;๐pub(crate) use std::time::Duration;๐pub(crate) use std::time::Instant;๐pub(crate) use Inotify;๐pub(crate) use WatchMask;๐pub(crate) use std::os::unix::io::AsRawFd;๐pub(crate) use anyhow::Context;๐pub(crate) use anyhow::Result;๐pub(crate) use anyhow::anyhow;๐pub(crate) use anyhow::bail;๐pub(crate) use clap::Parser;๐pub(crate) use crossbeam::channel::Receiver;๐pub(crate) use crossbeam::select;๐pub(crate) use lazy_static::lazy_static;๐pub(crate) use libbpf_rs::AsRawLibbpf;๐pub(crate) use libbpf_rs::OpenObject;๐pub(crate) use libbpf_rs::ProgramInput;๐pub(crate) use libbpf_rs::libbpf_sys;๐pub(crate) use nix::sched::CpuSet;๐pub(crate) use nvml_wrapper::Nvml;๐pub(crate) use nvml_wrapper::error::NvmlError;๐pub(crate) use once_cell::sync::OnceCell;๐pub(crate) use regex::Regex;๐pub(crate) use LayerAlloc;๐pub(crate) use LayerDemand;๐pub(crate) use unified_alloc;๐pub(crate) use scx_raw_pmu::PMUManager;๐pub(crate) use scx_utils::CoreType;๐pub(crate) use scx_utils::Cpumask;๐pub(crate) use scx_utils::Llc;๐pub(crate) use scx_utils::NR_CPU_IDS;๐pub(crate) use scx_utils::NR_CPUS_POSSIBLE;๐pub(crate) use scx_utils::NetDev;๐pub(crate) use scx_utils::Topology;๐pub(crate) use scx_utils::TopologyArgs;๐pub(crate) use scx_utils::UserExitInfo;๐pub(crate) use scx_utils::build_id;๐pub(crate) use scx_utils::compat;๐pub(crate) use scx_utils::init_libbpf_logging;๐pub(crate) use scx_utils::libbpf_clap_opts::LibbpfOpts;๐pub(crate) use scx_utils::perf;๐pub(crate) use cpu_idle_resume_latency_supported;๐pub(crate) use update_cpu_idle_resume_latency;๐pub(crate) use scx_utils::read_netdevs;๐pub(crate) use scx_utils::scx_enums;๐pub(crate) use scx_utils::scx_ops_attach;๐pub(crate) use scx_utils::scx_ops_load;๐pub(crate) use scx_utils::scx_ops_open;๐pub(crate) use scx_utils::uei_exited;๐pub(crate) use scx_utils::uei_report;๐pub(crate) use std::collections::VecDeque;๐pub(crate) use Pid;๐pub(crate) use ProcessRefreshKind;๐pub(crate) use ProcessesToUpdate;๐pub(crate) use System;๐pub(crate) use debug;๐pub(crate) use error;๐pub(crate) use info;๐pub(crate) use trace;๐pub(crate) use warn;๐pub(crate) use tracing_subscriber::filter::EnvFilter;๐pub(crate) use walkdir::WalkDir;๐pub(crate) use scx_layered::*;๐pub(crate) use scx_stats::prelude::*;๐
Modulesยง
Structsยง
- BpfLinks
- BpfMaps
- BpfProgs
- BpfSkel
- BpfSkel
Builder - BpfStats ๐
- DFL_
DISALLOW_ ๐OPEN_ AFTER_ US - DFL_
DISALLOW_ ๐PREEMPT_ AFTER_ US - EXAMPLE_
CONFIG ๐ - GpuTask
Affinitizer ๐ - Hint
Layer ๐Info - Layer ๐
- Layer
Stats ๐ - Node
Info ๐ - Open
BpfMaps - Open
BpfProgs - Open
BpfSkel - Opts ๐
- scx_layered: A highly configurable multi-layer sched_ext scheduler
- Owned
Ref - Scheduler ๐
- Stats ๐
- Struct
Ops - SysStats ๐
- USAGE_
DECAY ๐ - Xnuma
Rates ๐ - Result of xnuma water-fill computation for a single layer.
Enumsยง
- Cgroup
Event ๐ - Stats
Req ๐ - Stats
Res ๐
Constantsยง
- DEFAULT_
LAYER_ ๐WEIGHT - DUTY_
CYCLE_ ๐SCALE - LAYER_
USAGE_ ๐OPEN - LAYER_
USAGE_ ๐OWNED - LAYER_
USAGE_ ๐PROTECTED - LAYER_
USAGE_ ๐PROTECTED_ PREEMPT - LAYER_
USAGE_ ๐SUM_ UPTO - MAX_
COMM ๐ - MAX_
LAYERS ๐ - MAX_
LAYER_ ๐MATCH_ ORS - MAX_
LAYER_ ๐NAME - MAX_
LAYER_ ๐WEIGHT - MAX_
PATH ๐ - MIN_
LAYER_ ๐WEIGHT - NR_
GSTATS ๐ - NR_
LAYER_ ๐MATCH_ KINDS - NR_
LAYER_ ๐USAGES - NR_
LLC_ ๐LSTATS - NR_
LSTATS ๐ - SCHEDULER_
NAME ๐ - USAGE_
HALF_ ๐LIFE - USAGE_
HALF_ ๐LIFE_ F64 - XNUMA_
RATE_ ๐DAMPEN
Staticsยง
Functionsยง
- build_
skel_ config - calc_
peak_ ๐aware_ target_ range - calc_
util ๐ - clap_
main_ ๐fn - copy_
into_ ๐cstr - create_
perf_ ๐fds - expand_
template ๐ - find_
cpumask ๐ - get_
kallsyms_ ๐addr - main
- name_
suffix ๐ - nvml ๐
- read_
cpu_ ๐ctxs - read_
total_ ๐cpu - resolve_
cpus_ ๐pct_ range - setup_
membw_ ๐tracking - traverse_
sysfs ๐ - update_
peak_ ๐util - verify_
layer_ ๐specs - write_
example_ ๐file - xnuma_
check_ ๐active - Determine per-node migration source state with two-threshold hysteresis.
- xnuma_
compute_ ๐rates - Compute water-fill migration rates for a single layer.