Fork
0
代码
介绍
代码
Issues
Pull Requests
流水线
Actions
讨论
Wiki
项目成员
分析
项目设置
Fork
0
master
MindIE-LLM
/
tests
/
dlt
/
ut
/
scheduler
下载当前目录
ascend-robot
修正循环依赖
26fde602
创建于
3月25日
历史提交
文件
最后提交记录
最后更新时间
CMakeLists.txt
修正循环依赖 Co-authored-by: lbr711<liuboru1@huawei.com> Co-authored-by: yangjinyang<yangjinyang5@huawei.com> # message auto-generated for no-merge-commit merge:
!602
merge pr_03 into dev 修正循环依赖 Created-by: yangjinyang Commit-by: lbr711;yangjinyang Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 故障码上报功能位于server中,llm_engine中为了上报故障码直接将server的healthChecker.cpp加入编译llm_engine.so时源文件链接范畴,导致所有直接/间接依赖llm_engine.so的模块,都必须显示链接mindieservice_endpoint,否则找不到符号无法通过编译。 Fix part of
#312
# 修改内容 原本内嵌于HealthChecker类中的错误队列功能抽取为独立的单例类ErrorQueue,实现了错误处理逻辑的集中化与解耦,提升了代码的模块化、可维护性,并为其他模块复用该功能奠定了基础 # 资料变更 不涉及 # 接口变更 不涉及 # 测试结果    # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [ ] 代码注释完备 - [ ] 正确记录错误日志 - [ ] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [ ] 进行了空指针校验 - [ ] 若存在资源申请,使用后资源被正确的释放了 - [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [ ] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [ ] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!602
2 个月前
test_batch_latency_tracker.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_decode_regression.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_dynamicBatchSize.cpp
基于batch size的SLO调度优化算法 Co-authored-by: weixin_47478097<litianle8@huawei.com> # message auto-generated for no-merge-commit merge:
!612
merge merge-slo-ltl into dev 基于batch size的SLO调度优化算法 Created-by: weixin_47478097 Commit-by: weixin_47478097 Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 本PR实现了MindIE LLM在多种切分策略下,基于设定的SLO约束自动调整推理服务配置的能力,主要解决以下问题: 1. 多DP场景下动态BatchSize调整不一致问题:原有动态BatchSize调整算法在多DP(数据并行)场景下,各DP独立计算batch size,导致不同DP的计算结果不一致,可能造成某些DP上的请求被阻塞。 2. LatencyPredictor多DP场景访问问题:原实现在多DP场景下,ModelExecOutputHandler和LlmEngine直接访问latencypredictor,在DP聚合场景下存在时序问题。 3. 工行需求需要支持多DP场景 #[253]
https://gitcode.com/Ascend/MindIE-LLM/issues/253
# 修改内容 1. 新增DynamicBatchRecorder类(核心改动) - 文件:src/scheduler/policy/dynamic_batch_recorder.h/cpp - 采用单例模式,每个DP rank拥有独立的recorder实例 - 提供跨DP数据聚合接口AggregateAllFromAllDPs(),用于收集所有DP的延迟、batch size和decode请求数,并取最大值作为全局决策依据 - 管理每个DP rank的LatencyPredictor和DecodeBatchSizeTracker 2. 改进DynamicBatchSize算法 - 文件:src/scheduler/policy/dynamic_batch_size.cpp/h - 新增localDPRank参数,支持多DP场景 - 使用DynamicBatchRecorder::AggregateAllFromAllDPs()聚合所有DP的数据 - 使用聚合后的最大值(而非各DP独立值)进行batch size决策,保证各DP计算结果一致 - 新增ApplyUpdatedBatchSize()方法统一处理batch size更新 3. LlmEngine和ModelExecOutputHandler适配 - 文件:src/engine/llm_engine.cpp/h、src/engine/model_exec_output_handler.cpp - 新增SetupLatencyPredictor()方法,通过DynamicBatchRecorder获取predictor - 在引擎初始化时注册LatencyPredictor到DynamicBatchRecorder # 资料变更 不涉及 # 接口变更 不涉及 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [ ] 代码注释完备 - [ ] 正确记录错误日志 - [ ] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [ ] 进行了空指针校验 - [ ] 若存在资源申请,使用后资源被正确的释放了 - [ ] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [ ] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [ ] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!612
2 个月前
test_edge_cloud_policy.cpp
边云协同支持spcp Co-authored-by: aolin123<zhangaolin5@huawei.com> Co-authored-by: Kisella<yezhujun1@h-partners.com> # message auto-generated for no-merge-commit merge:
!398
merge dev into dev 边云协同支持spcp Created-by: aolin123 Commit-by: aolin123;Kisella Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:
Fixes #ISSUE ID
会自动关闭issue,如问题部分解决请不要使用
Fixes
,可以用
Fix part of #ISSUE ID
替代. Fix part of [
#150
](
https://gitcode.com/Ascend/MindIE-LLM/issues/150)
# 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 边云协同ds双机场景新增支持cpsp功能。在开启spcp后,block管理的最小单位为sp_rank,每个npu上使用的block不再相同。边云场景下边侧和云侧npu卡数不同,block使用情况不同,sp数不同,无法使用原方案统一在边侧管理。因此在边侧新增cloudblockmanager,在边侧对边云block分别管理,边侧流程不变,云侧读取cloudblockmanager分配的block。 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 不涉及 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 不涉及 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 已验证QWEN3、DS、QWEN2.5模型的短序列、长序列,以上在集中式、分布式推理场景均通过。 # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!398
3 个月前
test_fcfs_edge_cloud_policy.cpp
[Feature] enable multi block tables & kv cache descs Co-authored-by: coding-lz<liuzhe62@huawei.com> # message auto-generated for no-merge-commit merge:
!500
merge dev_0306 into dev [Feature] enable multi block tables & kv cache descs Created-by: coding-lz Commit-by: coding-lz Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:
Fixes #ISSUE ID
会自动关闭issue,如问题部分解决请不要使用
Fixes
,可以用
Fix part of #ISSUE ID
替代. Fix part of [
#234
](
https://gitcode.com/Ascend/MindIE-LLM/issues/234)
# 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!500
2 个月前
test_latency_predictor.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_pd_priority_sync.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_policy_factory.cpp
[Feature] enable multi block tables & kv cache descs Co-authored-by: coding-lz<liuzhe62@huawei.com> # message auto-generated for no-merge-commit merge:
!500
merge dev_0306 into dev [Feature] enable multi block tables & kv cache descs Created-by: coding-lz Commit-by: coding-lz Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:
Fixes #ISSUE ID
会自动关闭issue,如问题部分解决请不要使用
Fixes
,可以用
Fix part of #ISSUE ID
替代. Fix part of [
#234
](
https://gitcode.com/Ascend/MindIE-LLM/issues/234)
# 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 # 测试结果 > 请说明测试场景,测试方法以及测试结果。\ > 测试用例设计时需考虑硬件、部署方式、功能、性能、精度、显存等维度。 # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!500
2 个月前
test_prefill_regression.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_queue_counter.cpp
cleancode及安全加固 Co-authored-by: shenzhao<shenzhao9@huawei.com> # message auto-generated for no-merge-commit merge:
!58
merge dev1227 into dev cleancode及安全加固 Created-by: shenzhao Commit-by: shenzhao Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 > 请描述为什么要做这个PR内的改动。\ > 如涉及,请关联前序PR或同特性/需求下的其他PR。\ > 如果是修复之前PR引入的问题,请关联引入问题的PR。\ > 注意:
Fixes #ISSUE ID
会自动关闭issue,如问题部分解决请不要使用
Fixes
,可以用
Fix part of #ISSUE ID
替代. Fix part of
#43
修复代码安全风险问题 根据环境变量设置轮转文件大小时,没有校验输入大小 访问sequencegroup的seqs_没有判空,存在访问越界风险 GetNumRequiredBlocks中返回值类型为size_t,返回值为-1,存在隐式转换;blockSize为0为异常情况,建议进行异常处理 # 修改内容 > 请描述修改内容的具体实现,涉及哪些组件之间进行交互,可以用1、2、3、...进行罗列。\ > 如果是需求或者重构类的PR,需要补充详细设计文档(说明上下游组件关系、时序图、类图、DFX能力等内容)。 1. 限制文件大小500M,限制文件个数20个 2. 增加校验 3. 校验blockSize为0时抛异常 # 资料变更 > 请确认是否涉及资料变更。如涉及,需要在PR中体现,并简要说明修改内容。如不涉及,需填写“不涉及”。 不涉及 # 接口变更 > 请确认是否涉及跨代码仓或者客户面可见的接口变更。如涉及,需要详细说明接口以及对应的变更内容,同时需要在资料中体现。如不涉及,需填写“不涉及”。 不涉及 # 测试结果 单机混布,测试基础服务化推理正常   # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!58
4 个月前
test_scheduler.cpp
[新需求] 虚推健康方案-虚推健康方案llm侧 Co-authored-by: Huangzjun<zijunhua@usc.edu> # message auto-generated for no-merge-commit merge:
!312
merge br_dev_sim_0127 into dev [新需求] 虚推健康方案-虚推健康方案llm侧 Created-by: Huangzjun Commit-by: Zijun Huang;Huangzjun Merged-by: ascend-robot Description: <!-- PR描述模板更新日期:20251225 --> # 合入背景 当前技术状况:在PD分离场景下,如果子进程挂死,未发出退出信号,服务仍对外保持健康状态,其他卡触发HCCL/LCCL通信超时引发重启。 因此,PD分离需要一种通用的静默故障检测方案 Fix part of [
#170
](
https://gitcode.com/Ascend/MindIE-LLM/issues/170)
(有依赖pr所以重新提交pr,检视意见修改可见原pr
https://gitcode.com/Ascend/MindIE-LLM/pull/154)
# 修改内容 1. LLM manager:虚推有特定固定seqid和requestid,完成seqid和req id的映射 2. Scheduler: pd分离场景跳过kvtransfer,虚推p节点正常prefill走完整流程,d节点直接进入running队列进行推理,并且虚推请求使用固定的blocktable且不写入slot 3. TextGenerator: 固定给虚推分发context = 0,和dummybatch复用,context = 0时跳过更新和清除 时序图:  # 资料变更 不涉及 # 接口变更 不涉及 # 测试结果 cpsp,mtp,prefix cache,异步调度  # CheckList > PR提交人对以下CheckList自检项进行全量自检,自检通过或不涉及,均修改 [ ] 为 [x]。 - [x] 代码注释完备 - [x] 正确记录错误日志 - [x] 进行了返回值校验 (禁止使用void屏蔽安全函数、自研函数返回值;考虑接口的异常场景;调用底层组件接口时,需要进行返回值校验) - [x] 进行了空指针校验 - [x] 若存在资源申请,使用后资源被正确的释放了 - [x] 若涉及多线程场景,考虑了并发场景,不存在死锁问题 - [x] 按照[代码仓中提供的格式模板](
https://gitcode.com/Ascend/MindIE-LLM/blob/master/.clang-format),使用clang-format工具格式化代码
- [x] 符合Ascend社区的编码规范。[C++ 语言编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-coding-style-guide.md)
| [C++ 语言安全编程指导](
https://gitcode.com/Ascend/community/blob/master/docs/contributor/Ascend-cpp-secure-coding-guide.md)
See merge request: Ascend/MindIE-LLM
!312
3 个月前
test_scheduling_budget.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前
test_time_division_policy.cpp
[dev]Synchronize code Co-authored-by: forcekeng<gengli8@huawei.com>
5 个月前