Build adaptive resource control agent
第三届中国研究生操作系统开源创新大赛社区赛题作品。AROS Agent 是一个基于用户态决策的资源管控框架:Agent 感知 workload 特征,调用标准化 Skill/Tool 能力,选择 sched_ext 调度策略,并可扩展 eBPF hook、cgroup 资源控制、network/security policy 等 OS Agent。
本仓库当前实现了一个可运行的最小闭环:
scx_rusty
scx_lavd
scx_bpfland
在 Windows/macOS/Linux 上都可以先用演示模式观察作品:
python -m agentx.main --demo --port 8765
打开浏览器访问:
http://127.0.0.1:8765
在 openEuler 24.03-LTS-SP4 上接入真实 sched_ext:
bash scripts/setup_openeuler.sh python -m agentx.main --apply --port 8765
--apply 会尝试真正执行调度器命令或 cgroup 写入;普通展示建议先使用 --demo 或默认 dry-run。
--apply
--demo
agentx/ Agent 核心实现 configs/agent.json 策略、scx 命令和安全参数 skills/ 标准化 Skill 能力 manifest scripts/ openEuler 安装、演示和测试脚本 web/ 本地可视化仪表盘 docs/ 设计方案和实验方案 tests/ 关键策略单元测试
目标环境:
sched_ext
scx
bpftool
clang/llvm
libbpf-devel
检查内核是否支持 sched_ext:
test -d /sys/kernel/sched_ext && echo "sched_ext ready"
如未安装 scx,可参考官方项目:
git clone https://github.com/sched-ext/scx.git
python scripts/benchmark.py --seconds 20 --output reports/benchmark.json
然后启动仪表盘,页面会自动读取 reports/benchmark.json 展示对比结果。
reports/benchmark.json
# 演示模式 python -m agentx.main --demo # 真实执行模式 sudo python -m agentx.main --apply # 运行测试 python -m unittest discover -s tests # 生成基准报告 python scripts/benchmark.py
configs/agent.json
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
AROS Agent: 面向 openEuler 的自适应资源管控 Agent
第三届中国研究生操作系统开源创新大赛社区赛题作品。AROS Agent 是一个基于用户态决策的资源管控框架:Agent 感知 workload 特征,调用标准化 Skill/Tool 能力,选择 sched_ext 调度策略,并可扩展 eBPF hook、cgroup 资源控制、network/security policy 等 OS Agent。
本仓库当前实现了一个可运行的最小闭环:
scx_rusty、scx_lavd、scx_bpfland等 sched_ext 调度器;无内核能力时自动 dry-run。快速启动
在 Windows/macOS/Linux 上都可以先用演示模式观察作品:
打开浏览器访问:
在 openEuler 24.03-LTS-SP4 上接入真实 sched_ext:
目录结构
openEuler 环境
目标环境:
sched_extscx调度器工具、bpftool、clang/llvm、libbpf-devel检查内核是否支持 sched_ext:
如未安装 scx,可参考官方项目:
运行基准测试
然后启动仪表盘,页面会自动读取
reports/benchmark.json展示对比结果。创新点
--apply才执行系统级操作;所有 action 都写入审计日志。常用命令
注意事项
configs/agent.json中调整。