Skip to main contentCrate scx_p2dq
Source pub(crate) use stats::Metrics; ๐ pub(crate) use libbpf_rs::MapCore as _; ๐ pub(crate) use scx_utils::NR_CPU_IDS; ๐ pub(crate) use scx_p2dq::TOPO; ๐ pub(crate) use std::mem::MaybeUninit; ๐ pub(crate) use std::sync::Arc; ๐ pub(crate) use std::sync::atomic::AtomicBool; ๐ pub(crate) use std::sync::atomic::Ordering; ๐ pub(crate) use std::time::Duration; ๐ pub(crate) use anyhow::Context; ๐ pub(crate) use anyhow::Result; ๐ pub(crate) use anyhow::bail; ๐ pub(crate) use clap::Parser; ๐ pub(crate) use crossbeam::channel::RecvTimeoutError; ๐ pub(crate) use libbpf_rs::AsRawLibbpf; ๐ pub(crate) use libbpf_rs::OpenObject; ๐ pub(crate) use libbpf_rs::ProgramInput; ๐ pub(crate) use libbpf_rs::skel::Skel; ๐ pub(crate) use scx_arena::ArenaLib; ๐ pub(crate) use scx_utils::NR_CPU_IDS; ๐ pub(crate) use scx_utils::Topology; ๐ 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 cpu_idle_resume_latency_supported; ๐ pub(crate) use epp_supported; ๐ pub(crate) use for_each_uncore_domain; ๐ pub(crate) use get_epp; ๐ pub(crate) use get_turbo_enabled; ๐ pub(crate) use get_uncore_max_freq_khz; ๐ pub(crate) use get_uncore_min_freq_khz; ๐ pub(crate) use set_epp; ๐ pub(crate) use set_turbo_enabled; ๐ pub(crate) use set_uncore_max_freq_khz; ๐ pub(crate) use turbo_supported; ๐ pub(crate) use uncore_freq_supported; ๐ pub(crate) use update_cpu_idle_resume_latency; ๐ 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 debug; ๐ pub(crate) use info; ๐ pub(crate) use warn; ๐ pub(crate) use tracing_subscriber::filter::EnvFilter; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_NR_STATS; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ATQ_ENQ; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ATQ_REENQ; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_DIRECT; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_DISPATCH_PICK2; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_DSQ_CHANGE; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_DSQ_SAME; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_EAS_BIG_SELECT; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_EAS_FALLBACK; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_EAS_LITTLE_SELECT; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ENQ_CPU; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ENQ_INTR; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ENQ_LLC; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_ENQ_MIG; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_EXEC_BALANCE; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_EXEC_SAME_LLC; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_FORK_BALANCE; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_FORK_SAME_LLC; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_IDLE; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_KEEP; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_LLC_MIGRATION; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_NODE_MIGRATION; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_SELECT_PICK2; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_THERMAL_AVOID; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_THERMAL_KICK; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_WAKE_LLC; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_WAKE_MIG; ๐ pub(crate) use bpf_intf::stat_idx_P2DQ_STAT_WAKE_PREV; ๐ pub(crate) use scx_p2dq::SchedulerOpts; ๐ pub(crate) use scx_p2dq::TOPO; ๐ pub(crate) use scx_p2dq::bpf_intf; ๐ pub(crate) use scx_stats::prelude::*; ๐ pub(crate) use scx_p2dq::bpf_skel::*; ๐
- stats
- CliOpts ๐
- scx_p2dq: A pick 2 dumb queuing load balancing scheduler.
- Scheduler ๐
- SCHEDULER_NAME ๐
- clap_main_fn ๐
- main