mirror of
https://github.com/JakeHillion/scx.git
synced 2024-11-26 19:30:24 +00:00
6ab3928a0d
scx_lavd is a BPF scheduler that implements an LAVD (Latency-criticality Aware Virtual Deadline) scheduling algorithm. While LAVD is new and still evolving, its core ideas are 1) measuring how much a task is latency critical and 2) leveraging the task's latency-criticality information in making various scheduling decisions (e.g., task's deadline, time slice, etc.). As the name implies, LAVD is based on the foundation of deadline scheduling. This scheduler consists of the BPF part and the rust part. The BPF part makes all the scheduling decisions; the rust part loads the BPF code and conducts other chores (e.g., printing sampled scheduling decisions).
14 lines
377 B
Rust
14 lines
377 B
Rust
// Copyright (c) Changwoo Min <changwoo@igalia.com>
|
|
//
|
|
// This software may be used and distributed according to the terms of the
|
|
// GNU General Public License version 2.
|
|
|
|
fn main() {
|
|
scx_utils::BpfBuilder::new()
|
|
.unwrap()
|
|
.enable_intf("src/bpf/intf.h", "bpf_intf.rs")
|
|
.enable_skel("src/bpf/main.bpf.c", "bpf")
|
|
.build()
|
|
.unwrap();
|
|
}
|