Conversation
引入 SchedulerCore 实现调度循环,支持任务提交、取消、状态查询;提供可插拔策略:意图解析、分层准入、限界调度预算、分层任务选择;为 RDMA 和 UB 传输添加 scheduledTransferLength 接口;新增调度策略与核心的单元测试。
实现 SchedulerCore 调度核心,支持 QoS 分类、准入控制、分片调度与批量任务生命周期管理。 集成到 MultiTransport,新增 configureScheduling、submitScheduledTransfer 等接口, 并适配 freeBatchID、submitTransfer、getTransferStatus 等方法以处理调度器场景。
引入 SchedulerCore 核心调度器及可插拔策略(QoS 解析、准入、选路、预算), 为 TransferEngine 提供 configureScheduling、submitScheduledTransfer 和 cancelTransfer 接口。 各 Transport 适配 scheduledTransferLength 以支持分片调度, 并提供基准测试验证调度器对前台时延和总吞吐的影响。
TransferSubmitter 的 submit、submit_batch 等方法现在接受 OperationOptions, 其中包含可选的 SchedulingHint。未提供时,根据操作类型自动设置任务意图。 submitTransfer 改为使用 submitScheduledTransfer 传递调度信息。 同时添加了调度器的基准测试和结果比较脚本,用于验证调度效果。
扩展基准测试为目标/发起者双角色,取消对tebench的依赖。 添加--protocol、--device_name、--numa_node参数,支持多设备列表及拓扑生成。 内存分配改用numa_alloc,目标模式添加信号处理。 更新README文档,提供完整运行示例。
支持通过 --scheduler_class_weights 配置 HIGH:MEDIUM:LOW 权重,影响调度器决策。 JSONL 输出升级至 schema v2,新增每个流量类别的 avg/min/p50/p99/p999/p9999/max 延迟与吞吐量字段。 对比脚本更新以计算各类别的 Avg 减少、P99 减少和带宽保留率,并支持 class_weights 验证。
为 Client 和 RealClient 增加 configureScheduling 接口,支持通过命令行参数(如 --scheduling、--scheduler_quantum_bytes 等)启用并配置传输引擎调度策略,并解析类权重字符串。
zchuango
merged commit Sep 14, 2026
0563af1
into
LinQuickDev:supercache-snapshot-930
3 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
增加任务调度与通信大小包调度
Module
mooncake-transfer-engine)mooncake-store)mooncake-conductor)mooncake-reshard)mooncake-ep)mooncake-pg)mooncake-integration)mooncake-p2p-store)mooncake-wheel)mooncake-common)mooncake-rl)Type of Change
How Has This Been Tested?
Test commands:
# Example: bash scripts/run_ci_test.shTest results:
Checklist
./scripts/code_format.shAI Assistance Disclosure