| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[fix] 优化Controller线程执行逻辑,部分interval时间调整,降低负载,减少误杀概率 Co-authored-by: 吕有辉<lvyouhui@huawei.com> # message auto-generated for no-merge-commit merge: !219 merge master into master [fix] 优化Controller线程执行逻辑,部分interval时间调整,降低负载,减少误杀概率 Created-by: codeDogPro Commit-by: 吕有辉 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/151 ## **2. 修改内容** Two fixes targeting K8s probe timeouts when many instances register heartbeats simultaneously: 1. persist_data() now releases the instance lock before ETCD I/O across InstanceManager, InstanceAssembler, and FaultManager (3 files). Previously the lock was held for the entire ETCD round-trip, blocking all concurrent heartbeat lookups and creating a serialization bottleneck in the uvicorn event loop. 2、探针间隔,超时时间优化,减少误杀概率 3、引入条件变量处理线程睡眠逻辑,减少线程空转 4、心跳上报interval 1s -> 3s 心跳超时interval 5s -> 10s ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 ## **5. 测试结果**  端到端:  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!219 | 28 天前 | |
[fix] 优化Controller线程执行逻辑,部分interval时间调整,降低负载,减少误杀概率 Co-authored-by: 吕有辉<lvyouhui@huawei.com> # message auto-generated for no-merge-commit merge: !219 merge master into master [fix] 优化Controller线程执行逻辑,部分interval时间调整,降低负载,减少误杀概率 Created-by: codeDogPro Commit-by: 吕有辉 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/151 ## **2. 修改内容** Two fixes targeting K8s probe timeouts when many instances register heartbeats simultaneously: 1. persist_data() now releases the instance lock before ETCD I/O across InstanceManager, InstanceAssembler, and FaultManager (3 files). Previously the lock was held for the entire ETCD round-trip, blocking all concurrent heartbeat lookups and creating a serialization bottleneck in the uvicorn event loop. 2、探针间隔,超时时间优化,减少误杀概率 3、引入条件变量处理线程睡眠逻辑,减少线程空转 4、心跳上报interval 1s -> 3s 心跳超时interval 5s -> 10s ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 ## **5. 测试结果**  端到端:  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!219 | 28 天前 | |
[fix] 修复multi-deployment部署下的sp-block annotation位置 Co-authored-by: yilunh<hanyilun1@huawei.com> # message auto-generated for no-merge-commit merge: !386 merge deployer into master [fix] 修复multi-deployment部署下的sp-block annotation位置 Created-by: yilunh Commit-by: yilunh Merged-by: towncharlie Description: ## **1. 合入背景** MindCluster 7.3.0 规范要求, sp-block annotation 应配置在 **Pod 模板** 的 spec.template.metadata.annotations 上。 当前 multi_deployment 与 single_container 部署路径存在 **annotation 位置错误**: - 模板与生成逻辑将 sp-block 写在 Deployment 顶层 metadata.annotations - MindCluster 无法从 Pod 模板读取该配置,A3/A5 场景下可能影响 SuperPod 卡块调度 ## **2. 修改内容** 1. **模板**(engine_template.yaml、single_container_template.yaml) - 将 sp-block 从 Deployment 顶层移至 spec.template.metadata.annotations 2. **multi_deployment 生成逻辑**(k8s_utils.py → modify_sp_block_num()) - sp-block 读写路径改为 data["spec"]["template"]["metadata"] 3. **single_container 路径同步**(single_container.py) - A2/A3/A5 的 sp-block 路径统一改为 spec.template.metadata.annotations ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果**  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!386 | 1 天前 | |
[fix] 修复 CRD部署下的调度配置及sp-block计算逻辑 Co-authored-by: yilunh<hanyilun1@huawei.com> # message auto-generated for no-merge-commit merge: !319 merge deployer into master [fix] 修复 CRD部署下的调度配置及sp-block计算逻辑 Created-by: yilunh Commit-by: yilunh Merged-by: towncharlie Description: ## **1. 合入背景** 由于mindcluster 7.3.0更新,CRD部署多 Pod 推理实例时存在两处配置不一致: sp-block 计算错误 CRD 路径在 infer_service.py 中仅按单 Pod 卡数(如 p_pod_npu_num)写入 sp-block,未乘以每实例 Pod 数(single_*_instance_pod_num)。 而 multi_deployment 路径通过 modify_sp_block_num() 已按 pod 数 × 单 pod 卡数 计算。 多 Pod 实例在 A3/A5 上 sp-block 偏小,可能影响 SuperPod 卡块调度。 InferServiceSet engine 角色缺少 Gang 调度配置 按 MindCluster 规范,多 Pod NPU engine(encode / prefill / decode / union)需在 InferServiceSet 中配置: roles.metadata.labels.infer.huawei.com/gang-schedule: 'true' roles.spec.podManagementPolicy: Parallel 当前 CRD 模板未配置,多 Pod 实例无法按 Gang 方式统一调度与并行启动。 ## **2. 修改内容** 1、修复 sp-block 计算(examples/deployer/lib/generator/infer_service.py) _apply_infer_node_selector_and_sp_block() 增加 pods_key 参数 计算公式改为:sp_block_num = single_*_instance_pod_num × *_pod_npu_num 2、补齐 CRD engine 角色 Gang 调度模板(examples/deployer/yaml_template/infer_service_template.yaml) 为 encode / prefill / decode / union 四个 StatefulSet engine 角色增加: metadata.labels.infer.huawei.com/gang-schedule: 'true' spec.podManagementPolicy: Parallel ## **3. 资料变更** yaml template刷新配置 ## **4. 接口变更** yaml template刷新配置 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!319 | 3 天前 | |
fix: 修复pod权限问题 Co-authored-by: yujunyu2<yujunyu3@huawei.com> # message auto-generated for no-merge-commit merge: !10 merge master into master fix: 修复pod权限问题 Created-by: yjy_ac Commit-by: yujunyu2 Merged-by: towncharlie Description: ## **1. 合入背景** 修复pod内无法创建线程的权限问题 ## **2. 修改内容** 默认权限更改,同时补充说明文档 ## **3. 资料变更** 增加说明文档 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 不在出现如下情况  同时通过aisbench压测  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!10 | 3 个月前 | |
功能:KV 池化 metrics 接入 Mooncake Master /metrics Co-authored-by: yangan7<yangan7@h-partners.com> # message auto-generated for no-merge-commit merge: !204 merge kv_pool_metrics into master 功能:KV 池化 metrics 接入 Mooncake Master /metrics Created-by: mindie_yangan Commit-by: yangan7 Merged-by: towncharlie Description: ## **1. 合入背景** Fixes [#116](https://gitcode.com/Ascend/MindIE-PyMotor/issues/116) ## **2. 修改内容** metrics 整体上变化 服务级 /metrics 接入 KV 池化指标:在 pool_metrics_enable=true 时,周期抓取 Mooncake Master :9003/metrics,过滤并重命名为 kv_pool_*,拼接到服务级 GET /metrics(type=full)末尾;DP / instance / role / node 各级 不追加 池化指标,与 vLLM 分级指标隔离。 Mooncake Master 指标收敛为 4 个 metrics family:由上游 100+ 个 master_* 收敛为 kv_pool_size、kv_pool_ratio、kv_pool_keys、kv_pool_eviction;容量类以 GB 输出,通过 layer(cpu / ssd / all)与 stat(usage / total / usage_rate)区分维度(cpu=DRAM 内存池,ssd=文件池)。 池化指标固定全量输出:无论数值是否为 0,上述 4 个 family 均输出(含 cpu / ssd / all 的 usage、total、usage_rate),便于盯盘与联调;输出顺序为「先全部 kv_pool_size,再全部 kv_pool_ratio」,同 family 样本连续,符合 Prometheus 文本规范。 默认对存量部署零影响:pool_metrics_enable 默认 false,未配置 endpoint 时不抓取、不追加;Master 不可达时仅打 warning、_pool_metrics_text 置空,不影响 vLLM 主指标采集与 /metrics 其它输出。 部署侧对齐 KV 池化场景:kvp-master Service 暴露 9003(metrics);kv_cache_pool_config 非空时亦启用 kv-pool 部署(与 MULTI_CONNECTOR 并列);config_sample.json 补充 pool_metrics_enable / pool_metrics_endpoint 示例。 metrics_collector.py 修改 _KVPOOL_METRIC_ALLOWLIST / _KVPOOL_FAMILY_HELP:定义 Mooncake Master 允许采集的 7 个源指标名及 4 个对外 family 的 HELP 文案;字节容量映射为 kv_pool_size(GB),使用率映射为 kv_pool_ratio(usage_rate)。 _emit_labeled / _emit_layer_size / _emit_layer_rate:池化指标 Prometheus 文本生成工具;按 label 输出样本,每个 family 仅输出一次 HELP / TYPE;usage_rate = usage / total(total 为 0 时输出 0)。 _filter_kvpool_metrics:解析 Master 原始文本,白名单取值,计算 cpu / ssd / all 三层 usage、total、usage_rate 及 keys、eviction,返回过滤后的 kv_pool_* 文本块。 _fetch_pool_metrics:在 _update_metrics_thread 中与 vLLM collect 同周期执行;按 pool_metrics_enable / pool_metrics_endpoint HTTP GET Master(timeout 5s),成功则 _pool_metrics_text = _filter_kvpool_metrics(raw),失败则置空并记 warning。 get_metrics:在 metrics_type=full 路径返回 vLLM 聚合结果后,若 _pool_metrics_text 非空则追加到响应末尾(其它 type 不追加)。 _update_metrics_thread:在更新 _last_collects / _collects_version 之后调用 _fetch_pool_metrics,池化抓取与 Engine 指标刷新共用 reuse_time 周期。 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!204 | 29 天前 | |
[feature]对接SGLang — coordinator、deploy Co-authored-by: l00855614<linghubiao@huawei.com> # message auto-generated for no-merge-commit merge: !9 merge lhb_sglang_dev into master [feature]对接SGLang — coordinator、deploy Created-by: linghb Commit-by: l00855614 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/3 ## **2. 修改内容** 1、coordinator 新增pd_dual_dispatch_router,支持同时P和D双选,并发下发请求的模式; 2、deploy (1)Ascend_MF_STORE 单独部署;(2)user_config 增加sglang配置; ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 部署成功  推理请求成功 v1/completions  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!9 | 3 个月前 | |
[fix] 修复multi-deployment部署下的sp-block annotation位置 Co-authored-by: yilunh<hanyilun1@huawei.com> # message auto-generated for no-merge-commit merge: !386 merge deployer into master [fix] 修复multi-deployment部署下的sp-block annotation位置 Created-by: yilunh Commit-by: yilunh Merged-by: towncharlie Description: ## **1. 合入背景** MindCluster 7.3.0 规范要求, sp-block annotation 应配置在 **Pod 模板** 的 spec.template.metadata.annotations 上。 当前 multi_deployment 与 single_container 部署路径存在 **annotation 位置错误**: - 模板与生成逻辑将 sp-block 写在 Deployment 顶层 metadata.annotations - MindCluster 无法从 Pod 模板读取该配置,A3/A5 场景下可能影响 SuperPod 卡块调度 ## **2. 修改内容** 1. **模板**(engine_template.yaml、single_container_template.yaml) - 将 sp-block 从 Deployment 顶层移至 spec.template.metadata.annotations 2. **multi_deployment 生成逻辑**(k8s_utils.py → modify_sp_block_num()) - sp-block 读写路径改为 data["spec"]["template"]["metadata"] 3. **single_container 路径同步**(single_container.py) - A2/A3/A5 的 sp-block 路径统一改为 spec.template.metadata.annotations ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果**  ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!386 | 1 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 28 天前 | ||
| 28 天前 | ||
| 1 天前 | ||
| 3 天前 | ||
| 3 个月前 | ||
| 29 天前 | ||
| 3 个月前 | ||
| 1 天前 |