目录

SchedX-Agent

SchedX-Agent 是面向 Linux 混合负载的自适应资源管控 Agent。项目把进程与压力感知、规则或可选 LLM 提案、受控资源执行、真实指标验证和失败恢复连接成一个闭环,支持 cgroup v2、项目专用 sched_ext 调度器及 eBPF 观测。

最终提交目录

项目根目录/
├── README.md
├── src/                         项目源代码
├── docs/
│   ├── 项目说明书.pdf
│   ├── 项目创新说明.pdf
│   ├── 成员分工及主要贡献说明.pdf
│   └── 人工智能及第三方工具使用说明.pdf
├── tests/                       测试代码与验证入口
├── demo/                        可复现演示入口
├── presentation/
│   ├── 决赛现场演示PPT.pptx
│   └── 决赛演示视频.mp4
└── 作品原创承诺书.pdf

THIRD_PARTY_NOTICES.md、code_origin_stats.md 和 pyproject.toml 是项目运行与开源边界说明。实验运行时会在本地生成 reports/ 和 results/,这两个目录已加入 .gitignore,不属于最终提交材料。

应用场景与主要功能

  • 读取 procfs、PSI、cgroup、CPU 拓扑和服务指标,分类交互、普通、批处理与后台任务。
  • 使用白名单动作和声明的进程范围执行 cgroup、sched_ext 及 eBPF 策略。
  • 以成功响应、延迟、后台进度和系统健康验证候选;拒绝后恢复并保留运行证据。
  • 按进程身份、事务所有权和原子状态管理恢复,超时清理工具进程树。
  • 支持跨进程工具准入、交互优先、等待老化、排队预算、租约和有界压力反馈。

系统环境与依赖

完整内核验证环境为四 vCPU、8 GB 内存的 openEuler 24.03 LTS SP4,匹配内核为 6.6.0-159.4.3.154.oe2403sp4.schedx1。Python 要求 3.10 及以上。

  • Python 包使用 setuptools 构建,回归测试使用 pytest。
  • 原生组件需要匹配运行内核的 sched_ext 工具链、GCC、clang/LLVM、bpftool、libbpf 开发文件与内核 BTF。
  • 真实资源写入、BPF 加载及内核实验需要 root 权限或相应授权环境。
  • nginx、wrk、Redis/redis-benchmark、stress-ng 和 sysbench 是实验工作负载工具。
  • DeepSeek 是可选 API 服务;规则路径不要求模型可用,认证信息不得提交到仓库。

安装、构建与运行

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e . pytest
schedx --help
python -m pytest -q
python -m compileall -q src/schedx src/scripts

基础探测与分类:

schedx status
schedx probe --top 10
schedx classify --top 50

现场演示入口:

sudo bash demo/run_demo.sh

该入口需要 openEuler 24.03 LTS SP4、匹配的 sched_ext 工具链和相应权限。模型服务不可用时使用规则路径。演示输出会写入本地 results/competition-demo 与 reports/competition-final.md,不会进入最终提交。

结果范围与能力边界

项目在声明的四 vCPU 混合负载环境中验证了 nginx、Redis、sysbench 和 native sched_ext 对照场景。PPT 和提交材料中的性能数字均对应具体实验条件与公平性门槛,不能外推为所有硬件和工作负载上的通用结论。

当前 SP4 native 路径不执行硬 cpu.max;需要硬配额时使用已验证的默认调度器路径。网络与安全 eBPF 目前提供受控策略与审计能力,不等同于完整生产防火墙或强制访问控制产品。LLM 只生成受约束提案,结构化 Action、白名单、Canary 和回滚路径共同约束真实执行。

关于
325.5 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号