docs: replace innovation statement with user-provided PDF
SORA-DPA 是面向 openEuler 的用户态资源管控 Agent。项目围绕 Intent 先验与 SLO 契约、快慢路径和经验复用、主动调度探测、可验证动作与标准化 ResourceSkill 建立闭环;智能体提出候选,可信执行器实测、验证并恢复,内核快路径负责逐任务调度。
适用场景是延迟敏感服务与后台 CPU 任务共享资源。实验使用真实 gpt-6.1-sol 和 deepseek-flash,支持 EEVDF 时间片、cgroup CPU 权重以及 SORA-IntentSCX 候选。模型服务不进入内核调度热路径,也无需训练新的基础模型。中文 Qt 控制台使用 Python 的 PySide6 库。
README.md src/ sora_agent/ 契约、规划、执行、Skills、证据与经验 native/ C/eBPF 调度器、加载器和确定性负载 experiments/ 协议、运行器、采集、分析与复现工具源码 ui/ 中文 Qt 控制台 docs/ 操作系统开源创新大赛项目说明书(最终).pdf 项目创新说明.pdf 成员分工及主要贡献说明.pdf 人工智能及第三方工具使用声明_打印.pdf tests/ test_*.py 单元、回归与集成测试 ui/ 界面测试 results/ 验证数据、正式结果及校验清单 demo/ start.sh 启动真实历史证据的 Qt 展示 verify.sh 检查提交证据哈希 artifacts/ 内核能力说明与制品索引 presentation/ 决赛现场演示PPT/ 决赛演示视频/ 作品原创承诺书.pdf
根目录还保留 pyproject.toml、CMakeLists.txt、Makefile、configs/ 等构建配置。源码集中在 src/,测试代码与验证数据放在 tests/。
pyproject.toml
CMakeLists.txt
Makefile
configs/
src/
tests/
目标为 openEuler 24.03 LTS SP4、x86_64、Python 3.12。已验证的服务器内核为 6.6.0-osagentx-scx-cgv2+。必须检查实际内核具备 sched_ext、BPF/BTF、cgroup v2 与目标参数接口,不能只依据发行版名称判断。
6.6.0-osagentx-scx-cgv2+
原生构建依赖 Clang/LLVM、CMake 3.20+、bpftool、libbpf、libelf、zlib 和匹配的内核头文件。实验使用 Redis 与自研固定到达客户端及 CPU batch 负载。Python 运行依赖 PyYAML,可选分析依赖 NumPy/Matplotlib,测试依赖 pytest/Ruff,界面依赖 PySide6。实际版本与许可证见 第三方说明 和 configs/dependencies.lock.yaml;历史锁定清单不代表所有环境均采用相同版本。
configs/dependencies.lock.yaml
uname -r test -r /sys/kernel/sched_ext/state test -r /sys/kernel/btf/vmlinux test -r /sys/fs/cgroup/cgroup.controllers
在仓库根目录执行;建议使用独立 Python 环境。普通查看和测试不要求整个 GUI 以 root 运行。
python -m pip install -e '.[analysis,test,ui]' cmake -S . -B build/openEuler \ -DSORA_KERNEL_SOURCE=/path/to/matching/linux \ -DSORA_SCX_TOOLCHAIN_ROOT=/path/to/scx/toolchain cmake --build build/openEuler --parallel 4 ctest --test-dir build/openEuler --output-on-failure
原生程序输出到 build/openEuler/native/sched_ext/ 和 build/openEuler/native/workloads/。构建依赖使用仓库外目录,不提交内核 RPM、生成的 BPF 头文件或第三方项目源码。
build/openEuler/native/sched_ext/
build/openEuler/native/workloads/
bash demo/verify.sh bash demo/start.sh # 指定解释器或其他实验目录 SORA_UI_PYTHON=/path/to/python bash src/ui/start.sh --data-root /path/to/experiment
demo/start.sh 默认只读展示仓库内的实验结果,启动展示时不调用模型或修改内核。新实验通过 GUI 的启动页或现有 CLI 明确选择输入。
demo/start.sh
PYTHONPATH=src python -m experiments.runners.parameter_campaign --help PYTHONPATH=src python -m experiments.demo.sora_live_demo --help
复现多核批次采用 --profile multicore_4h --physical-cores 4,5 --candidate-space expanded --skip-phase-supplement,并显式提供 --reference、全新 --root 和原生 --binaries。协议实现见 src/experiments/protocols/parameter_tuning.py,批次配置见 tests/results/multicore_20261007/campaign/plan.json。复现时按目标机设置核布局、二进制路径和运行截止时间。真实模型认证来自私有环境或私有 auth.json,不存入仓库。
--profile multicore_4h --physical-cores 4,5 --candidate-space expanded --skip-phase-supplement
--reference
--root
--binaries
src/experiments/protocols/parameter_tuning.py
tests/results/multicore_20261007/campaign/plan.json
auth.json
make check PYTHON=python make test PYTHON=python
默认测试使用 src 导入路径,实验数据目录不参与 pytest 收集。Linux root 原生集成使用 SORA_NATIVE_INTEGRATION=1 启用;平台不满足时显示 skip。
src
SORA_NATIVE_INTEGRATION=1
四核主验证固定到 4 个独立物理核,每个条件 12 个配对块。GPT 与 DeepSeek 相对默认 EEVDF 的配对综合损失中位降幅为 36.25% 与 51.93%,原八项比较 Holm 校正后的两项 p 值均为 0.00390625。结论是该场景下的全程综合损失改善;全局请求 P99 仍约 3.26–3.27 ms。逐案例数据包含全部六个对照条件。
cpu.max
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
SORA-DPA
SORA-DPA 是面向 openEuler 的用户态资源管控 Agent。项目围绕 Intent 先验与 SLO 契约、快慢路径和经验复用、主动调度探测、可验证动作与标准化 ResourceSkill 建立闭环;智能体提出候选,可信执行器实测、验证并恢复,内核快路径负责逐任务调度。
适用场景是延迟敏感服务与后台 CPU 任务共享资源。实验使用真实 gpt-6.1-sol 和 deepseek-flash,支持 EEVDF 时间片、cgroup CPU 权重以及 SORA-IntentSCX 候选。模型服务不进入内核调度热路径,也无需训练新的基础模型。中文 Qt 控制台使用 Python 的 PySide6 库。
决赛材料与目录
根目录还保留
pyproject.toml、CMakeLists.txt、Makefile、configs/等构建配置。源码集中在src/,测试代码与验证数据放在tests/。架构与主要功能
系统环境与依赖
目标为 openEuler 24.03 LTS SP4、x86_64、Python 3.12。已验证的服务器内核为
6.6.0-osagentx-scx-cgv2+。必须检查实际内核具备 sched_ext、BPF/BTF、cgroup v2 与目标参数接口,不能只依据发行版名称判断。原生构建依赖 Clang/LLVM、CMake 3.20+、bpftool、libbpf、libelf、zlib 和匹配的内核头文件。实验使用 Redis 与自研固定到达客户端及 CPU batch 负载。Python 运行依赖 PyYAML,可选分析依赖 NumPy/Matplotlib,测试依赖 pytest/Ruff,界面依赖 PySide6。实际版本与许可证见 第三方说明 和
configs/dependencies.lock.yaml;历史锁定清单不代表所有环境均采用相同版本。安装与构建
在仓库根目录执行;建议使用独立 Python 环境。普通查看和测试不要求整个 GUI 以 root 运行。
原生程序输出到
build/openEuler/native/sched_ext/和build/openEuler/native/workloads/。构建依赖使用仓库外目录,不提交内核 RPM、生成的 BPF 头文件或第三方项目源码。运行与演示
demo/start.sh默认只读展示仓库内的实验结果,启动展示时不调用模型或修改内核。新实验通过 GUI 的启动页或现有 CLI 明确选择输入。复现多核批次采用
--profile multicore_4h --physical-cores 4,5 --candidate-space expanded --skip-phase-supplement,并显式提供--reference、全新--root和原生--binaries。协议实现见src/experiments/protocols/parameter_tuning.py,批次配置见tests/results/multicore_20261007/campaign/plan.json。复现时按目标机设置核布局、二进制路径和运行截止时间。真实模型认证来自私有环境或私有auth.json,不存入仓库。测试与验证材料
默认测试使用
src导入路径,实验数据目录不参与 pytest 收集。Linux root 原生集成使用SORA_NATIVE_INTEGRATION=1启用;平台不满足时显示 skip。四核主验证固定到 4 个独立物理核,每个条件 12 个配对块。GPT 与 DeepSeek 相对默认 EEVDF 的配对综合损失中位降幅为 36.25% 与 51.93%,原八项比较 Holm 校正后的两项 p 值均为 0.00390625。结论是该场景下的全程综合损失改善;全局请求 P99 仍约 3.26–3.27 ms。逐案例数据包含全部六个对照条件。
已知限制
cpu.max配额,执行器会检查相关能力并拒绝不支持的配置。