Skip to content

Releases: sched-ext/scx

v0.1.9

29 Apr 19:09
3ee64a1
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.8...v0.1.9

v0.1.8

04 Apr 17:07
c6fda26
Compare
Choose a tag to compare

What's Changed

  • README: drop reference to old ABI /sys/kernel/debug/sched/ext by @arighi in #140
  • scx_rustland: improve kernel/user-space communication by @arighi in #142
  • scx_rustland: prevent misaligned pointer dereference by @arighi in #144
  • rust: Add topology module to utils crate by @Byte-Lab in #143
  • scx_rustland: additional comand line options by @arighi in #145
  • Add libbpf logging to rust schedulers by @jordalgo in #141
  • scx: Demote panic! to warn! in topology crate by @Byte-Lab in #146
  • layered: Fix static configuration, and dispatch for Grouped layers by @Byte-Lab in #148
  • Refresh after attach by @Byte-Lab in #150
  • scx_layered: Add MATCH_NICE_EQUALS match kind by @davemarchevsky in #149
  • Add cpumask.rs crate by @Byte-Lab in #152
  • Topology refactor by @Byte-Lab in #154
  • scheds/sync-to-kernel.sh: Warn and skip if destination file is missing instead of failing by @htejun in #156
  • scx_rustland: cpu topology refactoring by @Byte-Lab in #155
  • common: Cosmetic change for consistency by @htejun in #157
  • sync-to-kernel.sh: Sync scx_central and scx_flatcg by @htejun in #158
  • ci: eclude scx_qmap and scx_userland from testing by @arighi in #160
  • Gate cargo build options behind 'enable_rust' by @jordalgo in #162
  • Add new infeasible.rs crate by @Byte-Lab in #159
  • Introduce scx_rustland_core: a generic layer to implement user-space schedulers in Rust by @arighi in #161
  • scx: update /etc/default/scx by @sirlucjan in #164
  • build: limit the maximum amount of parallel cargo build by @arighi in #165
  • Add libbpf as a submodule by @jordalgo in #163
  • Revert "Merge pull request #163 from jordalgo/libbpf-submodule" by @htejun in #166
  • Revert "Merge pull request #165 from sched-ext/reduce-rust-build-load" by @htejun in #167
  • Add libbpf as a submodule (take 2) by @jordalgo in #168
  • scx_rustland_core: API improvements by @arighi in #169
  • meson-scripts/build_libbpf: Accommodate meson setting CC to "ccache $COMPILER" by @htejun in #170
  • scx_rlfifo: warn user about performance by @arighi in #173
  • Always build libbpf as a PIE by @jordalgo in #172
  • Libbpf - add BUILD_STATIC_ONLY flag by @jordalgo in #174
  • [trivial] docs: Update rhone link by @Byte-Lab in #175
  • Remove libbpf as a submodule by @jordalgo in #177
  • Update README.md by @htejun in #182
  • scx_rustland_core: use new consume_raw() libbpf-rs API by @arighi in #180
  • scx_rustland: interactive tuning by @arighi in #181
  • Revert "scx_rustland_core: use new consume_raw() libbpf-rs API" by @arighi in #183
  • Fetch and build bpftool by default by @jordalgo in #179
  • rusty: Implement NUMA-aware load balancing by @Byte-Lab in #178
  • scx_flatcg: Keep cgroup rb nodes stashed by @davemarchevsky in #33
  • scx_layered: Implement layer properties exclusive and min_exec_us by @htejun in #185
  • scx_layered: Make config json assume default vaules for unspecified fields by @htejun in #187
  • Better parsing for clang version by @leitao in #190
  • scx_rustland: mitigate sub-optimal performance with offline CPUs by @arighi in #189
  • rusty: Account for disabled but offline CPUs by @Byte-Lab in #191
  • topology: support single CPU systems by @arighi in #188
  • scx_lavd: add LAVD (Latency-criticality Aware Virtual Deadline) scheduler by @multics69 in #192
  • scx: update /etc/default/scx by @sirlucjan in #193
  • scx_lavd: addressed comments from PR #192 by @multics69 in #194
  • topology: Fall back to cache 0 by @Byte-Lab in #196
  • layered: Make helper functions static by @Byte-Lab in #198
  • scx_lavd: improve virtual deadline calculation by @multics69 in #197
  • layered: Use TLS map instead of hash map by @Byte-Lab in #200
  • scx_lavd: Clean up task state transition tracking by @htejun in #199
  • scx_lavd: fix merge conflicts between PR 197 and 199 by @multics69 in #201
  • scx_lavd: directly accumulate task's runtimes for consecutive runnings by @multics69 in #204
  • rusty: Check LOCAL_DSQ length for WAKE_SYNC by @Byte-Lab in #206
  • scx: Apply API updates from sched_ext by @htejun in #207
  • Update cachyos-keyring by @sirlucjan in #208
  • Update Arch install instruction in README.md by @htejun in #209
  • Add install instructions for Fedora by @jordalgo in #210
  • Doc & build: Warn about sccache by @htejun in #212
  • openrc init support by @nycko123 in #211
  • ci: make test build more robust by @arighi in #213
  • scx_rustland_core: re-introduce consume_raw() libbpf-rs API by @arighi in #214

New Contributors

Full Changelog: v0.1.7...v0.1.8

v0.1.7

13 Feb 11:34
d790bdb
Compare
Choose a tag to compare

What's Changed

  • Bump versions by @htejun in #105
  • ci: print the latest commit of the checked out sched-ext kernel by @arighi in #106
  • scx_layered: Fix AFFN_VIOL stat bump by @dschatzberg in #107
  • systemd-services: setting conflict between schedulers by @sirlucjan in #108
  • Reworking systemd-service and adding a config file by @sirlucjan in #109
  • Make meson.build more readable by @sirlucjan in #112
  • scx_layered: small idle_cpumask cleanups by @dschatzberg in #111
  • Add BREAKING_CHANGES.md by @jordalgo in #113
  • [scx_layered] downgrade prometheus-client by @jordalgo in #115
  • scx_layered: dispatch from select_cpu if possible by @dschatzberg in #114
  • Add user_exit_info support to scx_utils and convert the rust scheds accordingly by @htejun in #116
  • docs: Update OVERVIEW to match latest APIs by @Decave in #118
  • scx_rustland: per-CPU DSQs + global shared DSQ by @arighi in #110
  • scheds/sync-to-kernel.sh: Drop most schedulers from sync by @htejun in #119
  • Include libbpf_h path in c sched compilation by @jordalgo in #120
  • scx_rustland: prevent duplicate PIDs in the task BTreeSet by @arighi in #121
  • common.bpf.h: Add kfunc prototype for scx_bpf_dispatch_cancel() by @htejun in #122
  • scx_userland: Print warning about poor performance by @Decave in #124
  • ci: Only do CI runs for pull requests by @Decave in #125
  • Add linux-sched-ext to CachyOS repo by @sirlucjan in #126
  • ci: detect errors only from stderr by @arighi in #128
  • scx: Update vmlinux to use SCX_KICK_IDLE by @htejun in #131
  • scx_rustland: fix cpumask stall and prevent stuttery behavior by @arighi in #132
  • Implement solution to infeasible weights problem by @Decave in #129
  • scx_rustland: per-task cpumask generation counter by @arighi in #133
  • scx_rustland: performance improvements by @arighi in #136
  • scx_utils: use c_char to prevent build failures by @arighi in #137
  • Bump to 0.1.7 by @sirlucjan in #138

Full Changelog: v0.1.6...v0.1.7

SCX v0.1.6

25 Jan 19:05
Compare
Choose a tag to compare

What's Changed

  • scx_rustland: small updates by @arighi in #77
  • ci: temporarily switch to ppa:arighi/sched-ext-unstable by @arighi in #78
  • scx_rustland: time slice boost by @arighi in #81
  • scx_flatcg: introduce CGROUP_MAX_RETRIES by @arighi in #80
  • scx_flatcg: Fix fallout from direct dispatch API update by @htejun in #82
  • scx_rustland: Update README.md by @htejun in #83
  • Update README.md to include terraria video by @htejun in #84
  • scx_rustland: voluntary context switch boost by @arighi in #85
  • scx_rustland: remove obsolete TODO note by @arighi in #86
  • scx_userland: use a custom memory allocator to prevent page faults by @arighi in #87
  • scx_rustland: introduce SMT support by @arighi in #90
  • Add systemd services for scx schedulers by @sirlucjan in #88
  • scx_rustland: introduce dynamic slice boost by @arighi in #91
  • scx_nest: Set timer callback after cancelling by @Decave in #92
  • scx-rustland: SMT improvements by @arighi in #94
  • Set log size to 10M by @sirlucjan in #93
  • ci: test the shedulers with the latest sched-ext kernel by @arighi in #95
  • Set the correct value for sched-ext journald namespace by @sirlucjan in #97
  • Update descriptions in cargo toml files by @jordalgo in #98
  • scx_rustland: fixes to improve scheduler stability by @arighi in #99
  • Add README.md for systemd services by @sirlucjan in #100
  • systemd-services: replace ConditionPathExists with ConditionPathIsDirectory by @sirlucjan in #102
  • Update vmlinux.h by @dschatzberg in #103
  • user_exit_info: Print out debug dump if available by @htejun in #104
  • scx_layered: Add support for OpenMetrics format by @dschatzberg in #101

New Contributors

Full Changelog: v0.1.5...v0.1.6

SCX v0.1.5

09 Jan 04:57
74923c6
Compare
Choose a tag to compare

What's Changed

  • scx_rustland: add documentation to scheds/rust/README.md by @arighi in #55
  • scx_rustland: reduce scheduler overhead by @arighi in #56
  • scx_rustland: improve scheduler cpu selection by @arighi in #57
  • scx_rustland: prevent dispatching multiple tasks on the same idle cpu by @arighi in #58
  • scx_rustland: lowlatency improvements by @arighi in #59
  • scx_rustland: prevent starvation and improve responsiveness by @arighi in #60
  • scx_rustland: notify user-space scheduler about exiting tasks by @arighi in #61
  • test the schedulers in the github workflow using virtme-ng by @arighi in #51
  • scheds: c: improve build portability by @arighi in #62
  • Userland scheduler updates by @Decave in #63
  • scx_rustland: improve interactive workloads by @arighi in #64
  • Add new archs for bpf_builder by @jordalgo in #65
  • Improve scx_rustland reliability by @arighi in #66
  • Add README files for each rust scheduler by @jordalgo in #67
  • scx_rustland: refactoring by @arighi in #68
  • bump scx_rusty and scx_layered by @jordalgo in #71
  • scx_rustland: enhancements by @arighi in #72
  • scx_rustland: dynamic time slice by @arighi in #73
  • scx_rustland: multicore fixes by @arighi in #74
  • scx: Build fix after kernel update by @htejun in #75
  • Bump versions by @htejun in #76

Full Changelog: v0.1.4...v0.1.5

SCX v0.1.4

28 Dec 22:10
d2a173f
Compare
Choose a tag to compare

What's Changed

  • scx_rustland improvements by @arighi in #47
  • scx_rustland: clarify and improve BPF / userspace interlocking by @arighi in #48
  • scx_rustland: introduce update_idle callback by @arighi in #52
  • Downgrade bindgen to 0.68 by @jordalgo in #50
  • Suppress the deprecation warning from bindgen and bump versions by @htejun in #53

Full Changelog: v0.1.3...v0.1.4

SCX v0.1.3

21 Dec 23:43
c7b52d4
Compare
Choose a tag to compare

What's Changed

  • scx_userland: allocate tasks array based on kernel.pid_max by @arighi in #29
  • make scx_userland more robust by @arighi in #30
  • minor refactor of scx_rusty by @jordalgo in #31
  • scx_utils: Update libbpf-cargo to 0.22 by @danielocfb in #32
  • Revert "scx_utils: Update libbpf-cargo to 0.22" by @htejun in #35
  • Update meson install in readme by @jordalgo in #34
  • rust: Update libbpf-rs & libbpf-cargo to 0.22 by @danielocfb in #36
  • Restructure scheds folder names by @jordalgo in #37
  • Fix some things in Nest by @Decave in #39
  • scx: Add CI action that builds schedulers for PRs by @Decave in #40
  • Update README for additional resources (blog posts and articles) by @multics69 in #41
  • ci: Run CI job on Ubuntu 22.04 by @Decave in #43
  • scx_rustlite: simple vtime-based scheduler written in Rust by @arighi in #38
  • scx_rustland: rename from scx_rustlite by @arighi in #44

New Contributors

Full Changelog: v0.1.2...v0.1.3

SCX v0.1.2

12 Dec 21:24
ca05e28
Compare
Choose a tag to compare

What's Changed

  • Update readme with alt meson install instructions by @jordalgo in #16
  • Support offline compilation by @htejun in #17
  • scx_nest: Reset schedulings when a task is dispatched by @Decave in #18
  • build scx on 32-bit architectures by @arighi in #21
  • scx_rusty: fix "subtract with overflow" error by @arighi in #20
  • build: introduce enable_rust build option by @arighi in #22
  • build: add Debian arch name mapping for s390 by @arighi in #23
  • README: Add ubuntu instructions by @htejun in #24
  • Update README for ubuntu instructions by @jordalgo in #25
  • scx_central: Break dispatch_to_cpu loop when running out of buffer slots by @kkdwivedi in #26
  • rust: clarify license and include text by @davide125 in #27
  • Bump versions and add LICENSE symlinks for scx_layered and scx_rusty by @htejun in #28

New Contributors

Full Changelog: v0.1.1...v0.1.2

SCX v0.1.1

07 Dec 23:18
d131502
Compare
Choose a tag to compare

What's Changed

  • README: Add instructions for Arch Linux by @htejun in #7
  • Readme by @Decave in #8
  • build: properly detect clang version in Ubuntu by @arighi in #11
  • rusty: Fix calc_util() in rusty by @Decave in #9
  • scx_nest: Add scx_nest scheduler by @Decave in #12
  • scx_utils::BpfBuilder: properly detect clang version in Ubuntu by @arighi in #13
  • scx_utils: Bump version to 0.3.2 by @htejun in #14
  • Bump overall version to 0.1.1 by @htejun in #15

New Contributors

Full Changelog: v0.1.0...v0.1.1

SCX initial release

06 Dec 01:09
291d704
Compare
Choose a tag to compare
v0.1.0

SCX v0.1.0