| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[feature]支持混布场景的精度异常检测 Co-authored-by: hxy<huxinyi9@huawei.com> # message auto-generated for no-merge-commit merge: !429 merge feat/hybrid-precision-detection into master [feature]支持混布场景的精度异常检测 Created-by: hu-xinyi_555 Commit-by: hxy Merged-by: towncharlie Description: ## **1. 合入背景** 精度异常检测之前仅支持了PD分离的方式,增加PD混布的支持 ## **2. 修改内容** 增加PD混布侧的请求采集 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 构造故障时能正确检出并上报异常 在自闭环的情况下自动杀死了混布实例 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [x] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!429 | 2 个月前 | |
[fix]修复Controller 若干问题 Co-authored-by: 吕有辉<lvyouhui@huawei.com> # message auto-generated for no-merge-commit merge: !447 merge fix_controller_log into master [fix]修复Controller 若干问题 Created-by: codeDogPro Commit-by: 吕有辉 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/245 https://gitcode.com/Ascend/MindIE-PyMotor/issues/246 https://gitcode.com/Ascend/MindIE-PyMotor/issues/256 ## **2. 修改内容** 1、修复Controller组件日志打印逻辑 2、修复configmap解析json的bug,如果不是json,就不要强制解析 3、node manager的心跳发送机制增强 4、ETCD续约机制增强,增加续约重试,避免误发送主降备 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 已修复场景: 1、实例重启,不再刷屏Controller的日志 2、Coordinator重启,推送功能正常 3、心跳超时后不再持续刷屏 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!447 | 2 个月前 | |
fix: SSL context 构建完成后清除明文密码,避免敏感信息驻留 Co-authored-by: LinWei100<linwei100@huawei.com> # message auto-generated for no-merge-commit merge: !462 merge fix/passwd into master fix: SSL context 构建完成后清除明文密码,避免敏感信息驻留 Created-by: LinWei100 Commit-by: LinWei100 Merged-by: towncharlie Description: ## **1. 合入背景** Fix [#259](https://gitcode.com/Ascend/MindIE-PyMotor/issues/259) CertUtil.construct_cert_context 在调用 load_cert_chain 完成私钥加载后,仍通过动态属性 context.password 将 TLS 私钥密码以明文形式保存在 SSLContext 对象上。该密码在 SSL 上下文构建完成后已无业务用途,但会随 context 生命周期长期驻留内存,存在敏感信息泄露风险。 本 PR 对齐同文件 create_ssl_context 的既有安全处理方式:在证书链加载完成后立即清理内存中的密码,且不再向 context 挂载明文密码属性。 不涉及前序 PR 或 Issue 关联(如有对应安全扫描/Issue,请自行补充 #ISSUE ID)。 --- ## **2. 修改内容** 1. **核心安全修复(construct_cert_context)** - 在 load_cert_chain 成功后调用 clear_passwd(password),清零内存中的密码 bytes。 - 删除 context.password = password.decode(...),避免 SSLContext 对象携带明文密码。 - 保留 context.cert_file / context.key_file / context.ca_file 等证书路径信息(非敏感数据)。 2. **pre-commit 合规性调整(同文件配套改动)** - 对 cert_util.py 执行 ruff 格式化,满足 pre-commit 检查。 - 修复 bandit B107 误报:将 validate_certificate_chain、create_ssl_context_no_client_cert 中密码相关参数的默认值由 "" 调整为 None,并补充 password_file 为 None 时的处理逻辑。 3. **涉及组件** - motor/common/http/cert_util.py:CertUtil.construct_cert_context 及证书工具类相关方法。 - 调用方行为不变:仍通过 construct_cert_context(config) 获取 SSL context;全仓库无代码读取 context.password(已确认无调用方依赖)。 --- ## **3. 资料变更** 不涉及。 --- ## **4. 接口变更** 不涉及。 - 无跨代码仓接口变更。 - 无客户面可见 API/配置项变更。 - construct_cert_context 返回值类型与对外行为保持一致,仅移除未使用的内部动态属性 context.password。 --- ## **5. 测试结果** | 测试场景 | 测试方法 | 结果 | |---------|---------|------| | pre-commit 全量检查 | pre-commit run --files motor/common/http/cert_util.py | 通过(ruff / pylint / bandit / typos 等) | | 证书上下文构建 | 既有 UT:tests/coordinator/test_http_server_cert.py 中 test_construct_cert_context* | 未新增 UT;逻辑为删除冗余属性 + 内存清理,与 create_ssl_context 模式一致 | | 功能回归 | 加密/非加密私钥场景下 construct_cert_context 正常返回 SSL context | 构建流程未改动,仅 post-load 清理密码 | **说明**:本次为安全加固,未涉及硬件、性能、精度、显存等维度变更。 --- ## **6. CheckList** [x] 代码注释完备 [x] 正确记录维测日志 [ ] 是否有UT用例(沿用既有 construct_cert_context 测试,未新增专项 UT) [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题(不涉及多线程改动) See merge request: Ascend/MindIE-PyMotor!462 | 2 个月前 | |
解决日志重复问题 Co-authored-by: wenkea<tianmengx12@163.com> Co-authored-by: 吴铭泾<wumingjing@huawei.com> # message auto-generated for no-merge-commit merge: !446 merge fix/request-cancel-and-logger into master 解决日志重复问题 Created-by: wenkea Commit-by: wenkea;吴铭泾 Merged-by: towncharlie Description: ## **1. 合入背景** Unified PD 路由在客户端断开、dispatch 取消等预期取消场景下,原先会将 asyncio.CancelledError 包装成 RuntimeError,在 dispatch.handle_request 中落入通用 Exception 分支,以 ERROR 级别打印完整堆栈,容易被误判为系统故障,干扰问题定位。 同时,日志模块在处理多行 message 和 exc_info 堆栈时,NewLineFormatter / MaxLengthFormatter 存在格式异常(堆栈 header 重复、换行截断不当),影响维测日志可读性。 #ISSUE ID: https://gitcode.com/Ascend/MindIE-PyMotor/issues/342 ## **2. 修改内容** 1.新增 RequestCancelledError 异常类型(motor/common/utils/error.py) 用于标识客户端断开、dispatch 取消等预期取消场景 携带 reason 字段,便于日志与 trace 记录 Unified PD 路由取消路径改造(motor/coordinator/router/strategies/unified_pd.py) 2.在 _process_response_error 中,将 asyncio.CancelledError 包装为 RequestCancelledError,替代原 RuntimeError 取消原因仍通过 check_cancel_error 解析,重试逻辑不变 Dispatch 层单独处理取消异常(motor/coordinator/router/dispatch.py) 3.新增 RequestCancelledError 捕获分支 以 debug 级别记录 api / req_id / reason,不再走通用 error 堆栈日志 仍返回 HTTP 500,并通过 sanitize_error_message 做安全处理 日志格式化修复(motor/common/logger/formatter.py、motor/common/logger/logger.py) 4.NewLineFormatter:仅对 message 内换行做 header 前缀扩展,避免 exc_info 堆栈 header 重复 MaxLengthFormatter:新增 _escape_for_single_line,将换行转义为 \n,保证单行日志长度截断正确 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及。 ## **5. 测试结果** 1.取消异常类型与 reason 传递 pytest tests/coordinator/router/test_cancel_error.py PASSED 2.Dispatch 取消时不打 ERROR 堆栈 test_dispatch_request_cancelled_does_not_log_error PASSED 3.非预期异常仍打 ERROR 堆栈 test_dispatch_unexpected_exception_still_logs_error PASSED 4.Unified PD 取消包装为 RequestCancelledError test_unified_pd_process_response_error_wraps_cancelled_as_request_cancelled_error PASSED 5.多行日志 / exc_info / MaxLength 转义 pytest tests/common/logger/test_logger.py PASSED 7.构造真实推理场景测试日志打印效果 问题已解决 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [x] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!446 | 2 个月前 | |
在P节点tokenizer后,校验请求长度+最大输出长度 > 模型上下文长度, 避免P产生KV cache残留问题 Co-authored-by: tobking<wangjun292@huawei.com> # message auto-generated for no-merge-commit merge: !513 merge pd-handoff-context-precheck into master 在P节点tokenizer后,校验请求长度+最大输出长度 > 模型上下文长度, 避免P产生KV cache残留问题 Created-by: tobking Commit-by: tobking Merged-by: towncharlie Description: ## **1. 合入背景** > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 请通过#ISSUE ID关联issue。\ > 注意: Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. [#309](https://gitcode.com/Ascend/MindIE-PyMotor/issues/309) ## **2. 修改内容** > 请<ins>**描述修改内容的具体实现**</ins>,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。 > 如果是需求或者重构类的PR,需要<ins>**补充详细设计文档**</ins>(说明上下游组件关系、时序图、类图、DFX能力等内容)。 Coordinator 在构造 _motor_dispatch 时,从原始 req_info.req_data 提取输出预算: 优先使用 max_completion_tokens; 否则使用 max_tokens。 为 MotorDispatch 增加可选字段 original_max_output_tokens,并随 dispatch 传递至 P 实例。 P 侧 vLLM adapter 从 MotorDispatch 读取该字段。 在 prompt render/tokenizer 完成后,校验: ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 不涉及 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 不涉及 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!513 | 2 个月前 | |
[fix]修复Controller 若干问题 Co-authored-by: 吕有辉<lvyouhui@huawei.com> # message auto-generated for no-merge-commit merge: !447 merge fix_controller_log into master [fix]修复Controller 若干问题 Created-by: codeDogPro Commit-by: 吕有辉 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/245 https://gitcode.com/Ascend/MindIE-PyMotor/issues/246 https://gitcode.com/Ascend/MindIE-PyMotor/issues/256 ## **2. 修改内容** 1、修复Controller组件日志打印逻辑 2、修复configmap解析json的bug,如果不是json,就不要强制解析 3、node manager的心跳发送机制增强 4、ETCD续约机制增强,增加续约重试,避免误发送主降备 ## **3. 资料变更** 不涉及 ## **4. 接口变更** 不涉及 ## **5. 测试结果** 已修复场景: 1、实例重启,不再刷屏Controller的日志 2、Coordinator重启,推送功能正常 3、心跳超时后不再持续刷屏 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-PyMotor!447 | 2 个月前 | |
【feature】kv-conductor Co-authored-by: 吕有辉<lvyouhui@huawei.com> # message auto-generated for no-merge-commit merge: !568 merge feat/kv-conductor into master 【feature】kv-conductor Created-by: codeDogPro Commit-by: 吕有辉 Merged-by: towncharlie Description: ## **1. 合入背景** https://gitcode.com/Ascend/MindIE-PyMotor/issues/338 内部subCMC已经评审,该大PR同意合入 ## **2. 修改内容** 1、引入kv-conductor【rust源代码,测试代码,设计文档】 2、Coordinator conductor client适配kv-conductor 3、新增kv-conductor config 4、kvcache_affine.md重写,以kv-conductor为准 5、build.sh集成kv-conductor二进制打包进whl的能力,支持跳过kv-conductor打包,便于在无rust编译环境上构建基础组件 ## **3. 资料变更** 涉及 ## **4. 接口变更** 涉及 ## **5. 测试结果** whl包版kv-conductor拉起成功,请求命中匹配成功 Looking in indexes: https://repo.huaweicloud.com/repository/pypi/simple, https://mirrors.huaweicloud.com/ascend/repos/pypi Processing ./dist/motor-0.1.0-py3-none-any.whl Installing collected packages: motor Attempting uninstall: motor Found existing installation: motor 0.1.0 Uninstalling motor-0.1.0: Successfully uninstalled motor-0.1.0 Successfully installed motor-0.1.0 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv [notice] A new release of pip is available: 24.0 -> 26.1.2 [notice] To update, run: pip install --upgrade pip Current node role: ROLE=kv_conductor Starting KV Conductor on 0.0.0.0:13333 2026-07-21T17:12:09.17062356+08:00 INFO scoring config hbm_weight=3 cpu_weight=2 disk_weight=1 2026-07-21T17:12:09.17093877+08:00 INFO KV conductor starting on 0.0.0.0:13333 2026-07-21T17:12:10.44555639+08:00 TRACE connection 192.168.196.1:50480 accepted 2026-07-21T17:12:10.44581192+08:00 TRACE connection 192.168.196.1:50480 closed 2026-07-21T18:18:48.26729199+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: started processing request 2026-07-21T18:18:48.26737949+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: query request model=Qwen3-30B-A3B-W8A8 tenant=default num_tokens=1503 2026-07-21T18:18:48.26740762+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: find_matches seq_len=12 depth=11 active_workers=2 elapsed_us=13 2026-07-21T18:18:48.26741747+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: hash_computed num_tokens=1503 block_size=128 num_hashes=12 hash_us=2 scores=2 2026-07-21T18:18:48.26743069+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: query profile num_tokens=1503 block_size=128 hash_us=37 total_us=43 2026-07-21T18:18:48.26745731+08:00 DEBUG request{method=POST uri=/query version=HTTP/1.1}: finished processing request latency=0 ms status=200 Qwen3-30B-A3B,Prefill DP2,Decode DP2测试如下: 发送8个请求,gsm8 未开启亲和性调度: ╒══════════════════════════╤═════════╤═════════════════╤════════════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════╕ │ Performance Parameters │ Stage │ Average │ Min │ Max │ Median │ P75 │ P90 │ P99 │ N │ ╞══════════════════════════╪═════════╪═════════════════╪════════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════╡ │ E2EL │ total │ 7389.6 ms │ 4197.7 ms │ 8487.4 ms │ 8063.4 ms │ 8298.8 ms │ 8377.5 ms │ 8476.4 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ TTFT │ total │ 311.4 ms │ 226.1 ms │ 484.5 ms │ 284.1 ms │ 373.7 ms │ 409.9 ms │ 477.0 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ TPOT │ total │ 15.7 ms │ 15.3 ms │ 15.9 ms │ 15.8 ms │ 15.9 ms │ 15.9 ms │ 15.9 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ ITL │ total │ 15.6 ms │ 0.0 ms │ 48.4 ms │ 15.6 ms │ 15.8 ms │ 16.0 ms │ 20.1 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ InputTokens │ total │ 1491.5 │ 1460.0 │ 1545.0 │ 1490.5 │ 1499.25 │ 1515.6 │ 1542.06 │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ OutputTokens │ total │ 452.125 │ 242.0 │ 512.0 │ 509.0 │ 512.0 │ 512.0 │ 512.0 │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ OutputTokenThroughput │ total │ 60.9652 token/s │ 57.651 token/s │ 63.2079 token/s │ 61.2631 token/s │ 62.0915 token/s │ 63.0926 token/s │ 63.1963 token/s │ 8 │ ╘══════════════════════════╧═════════╧═════════════════╧════════════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════╛ 开启亲和性: ╒══════════════════════════╤═════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════════════════╤═════╕ │ Performance Parameters │ Stage │ Average │ Min │ Max │ Median │ P75 │ P90 │ P99 │ N │ ╞══════════════════════════╪═════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════════════════╪═════╡ │ E2EL │ total │ 7240.3 ms │ 4261.9 ms │ 8632.0 ms │ 7745.1 ms │ 8326.5 ms │ 8438.4 ms │ 8612.6 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ TTFT │ total │ 320.5 ms │ 241.6 ms │ 519.1 ms │ 260.4 ms │ 393.4 ms │ 432.8 ms │ 510.5 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ TPOT │ total │ 15.8 ms │ 15.4 ms │ 15.9 ms │ 15.9 ms │ 15.9 ms │ 15.9 ms │ 15.9 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ ITL │ total │ 15.7 ms │ 0.0 ms │ 45.1 ms │ 15.6 ms │ 15.9 ms │ 16.1 ms │ 23.1 ms │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ InputTokens │ total │ 1491.5 │ 1460.0 │ 1545.0 │ 1490.5 │ 1499.25 │ 1515.6 │ 1542.06 │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ OutputTokens │ total │ 439.125 │ 254.0 │ 512.0 │ 481.5 │ 512.0 │ 512.0 │ 512.0 │ 8 │ ├──────────────────────────┼─────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────────────────┼─────┤ │ OutputTokenThroughput │ total │ 60.5041 token/s │ 58.5203 token/s │ 62.9559 token/s │ 60.4373 token/s │ 61.3642 token/s │ 61.9798 token/s │ 62.8583 token/s │ 8 │ ╘══════════════════════════╧═════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════════════════╧═════╛ ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-Motor!568 | 2 个月前 | |
update license Co-authored-by: y1lou<louyi6@huawei.com> # message auto-generated for no-merge-commit merge: !185 merge update_license into master update license Created-by: y1lou Commit-by: y1lou Merged-by: ascend-robot Description: ## **1. 合入背景** > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 请通过#ISSUE ID关联issue。\ > 注意: Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. ## **2. 修改内容** > 请<ins>**描述修改内容的具体实现**</ins>,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。 > 如果是需求或者重构类的PR,需要<ins>**补充详细设计文档**</ins>(说明上下游组件关系、时序图、类图、DFX能力等内容)。 ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [ ] 代码注释完备 [ ] 正确记录维测日志 [ ] 是否有UT用例 [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-pyMotor!185 | 7 个月前 | |
coordinator多进程版本合入主干 Co-authored-by: ganglv<lvgang1@huawei.com> Co-authored-by: tobking<wangjun292@huawei.com> Co-authored-by: j00813896<jiangwentao7@huawei.com> # message auto-generated for no-merge-commit merge: !251 merge br_home_base_multiprocess into master coordinator多进程版本合入主干 Created-by: tobking Commit-by: tobking;j00813896;ganglv Merged-by: ascend-robot Description: ## **1. 合入背景** > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 请通过#ISSUE ID关联issue。\ > 注意: Fixes #ISSUE ID会自动关闭issue,如问题部分解决请不要使用Fixes,可以用Fix part of #ISSUE ID替代. coordinator优化为多进程版本,提升高QPS场景下推理性能 [#158](https://gitcode.com/Ascend/MindIE-pyMotor-private/issues/158) ## **2. 修改内容** > 请<ins>**描述修改内容的具体实现**</ins>,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。 > 如果是需求或者重构类的PR,需要<ins>**补充详细设计文档**</ins>(说明上下游组件关系、时序图、类图、DFX能力等内容)。 1.coordinator拆分为mgmt,scheduler,infer 三种独立进程 2.coordinator主进程为deamon进程,其负责拉起上述三种子进程 ## **3. 资料变更** > 请确认<ins>**是否涉及资料变更**</ins>。\ > 如涉及,需要在PR中体现,并简要说明修改内容。\ > 如不涉及,需填写“不涉及”。 涉及,userconfig新增多进程相关配置项 ## **4. 接口变更** > 请确认<ins>**是否涉及跨代码仓或者客户面可见的接口变更**</ins>。\ > 如涉及,需详细说明接口以及对应的变更内容,同时需要在资料中体现。\ > 如不涉及,需填写“不涉及”。 不涉及 ## **5. 测试结果** > 需体现<ins>**测试场景,测试方法以及测试结果**</ins>。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 ## **6. CheckList** > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x] [x] 代码注释完备 [x] 正确记录维测日志 [x] 是否有UT用例 [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 See merge request: Ascend/MindIE-pyMotor-private!251 | 6 个月前 |