| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
大幅度提高本地ut脚本速度(几分钟到几秒) Co-authored-by: j00808874<jiangchanghong3@huawei.com> # message auto-generated for no-merge-commit merge: !94 merge mr into develop 大幅度提高本地ut脚本速度(几分钟到几秒) Created-by: j00808874 Commit-by: j00808874 Merged-by: chenyz6 Description: # Pull Request Template ## Description <!-- Provide a clear summary of the change, the problem it solves, and the technical approach. --> ## Related Issues <!-- Replace with actual issue numbers. Example: Closes #123, Related to #456 --> ## Type of Change - [ ] Bug fix - [ ] New feature - [ ] Performance optimization - [ ] Documentation update - [ ] Other (please describe):_______________ ## Testing <!-- Describe how the changes were tested. Include: - Unit/integration test coverage - Manual validation steps - Links to CI reports (e.g., CIDA) if available - Note any pending tests --> ## Checklist - [ ] I have performed a self-review of my own code. - [ ] I have updated the documentation. - [ ] I have added tests to prove my changes are effective. See merge request: Ascend/memcache!94 | 8 个月前 | |
HTTP Service in metaservice Co-authored-by: hansanyue<hansanyue@h-partners.com> # message auto-generated for no-merge-commit merge: !39 merge dev_1 into develop HTTP Service in metaservice Created-by: han-sanyue Commit-by: hansanyue Merged-by: yrewzjsx Description: 接口查询效果参考 doc/memcache_restful_api.md See merge request: Ascend/memcache!39 | 9 个月前 | |
kvevent支持加密通讯 Co-authored-by: Zixi Qu<quzixi@huawei.com> # message auto-generated for no-merge-commit merge: !444 merge kv_event_security into develop [feature] kvevent支持加密通讯 Created-by: huawei_zixiqu Commit-by: Zixi Qu;huawei_zixiqu Merged-by: chenyz6 Description: # 关于如何启用zmq通讯加密,请移步[这篇wiki](https://gitcode.com/Ascend/memcache/wiki/z%20KvEvent%20%E5%8A%A0%E5%AF%86%E9%85%8D%E7%BD%AE%E6%8C%87%E5%8D%97.md) # 合入来源 - [x] 需求 - [ ] 问题单 - [ ] issue # 问题/功能描述 详情移步关联issue # 修改方案描述 1. 将zmq模块独立出去,通讯方式可设置(新的模块在代码中需要通过 MmcKvEventRuntime::MakeTransport进行注册)。 2. zmq模块增加curve加密功能。 # 是否涉及UT/ST - [ ] 是 - [X] 否(说明理由): 之前的kvevent UT已涵盖基本功能 # 开发自检 - [X] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [X] 规范:已关联issue或里程碑 - [X] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [X] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [X] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [X] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [X] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!444 | 2 个月前 | |
KvEvent。对接PyMoter kv-conductor,元数据操作广播 Co-authored-by: zixiqu<quzixi@huawei.com> # message auto-generated for no-merge-commit merge: !334 merge kv_event_2 into develop KvEvent Created-by: huawei_zixiqu Commit-by: zixiqu;Zixi Qu;huawei_zixiqu Merged-by: chenyz6 Description: # 合入来源 - [x] 需求 - [ ] 问题单 - [ ] issue # 问题/功能描述 PyMotor prefill节点亲和性需求。增加key store/remove/clear 广播事件,使能PyMotor kv-conductor亲和性计算。本PR基于 @彭海清 工作,在其前期多版需求对齐的半成框架下,继续工作,推动功能对齐。 # 修改方案描述 增加 csrc下增加kv_event模块,增加zmq tranfer, publisher, 对外接口runtime文件,和使能实现的kv_event文件。在meta service对应位置进行kv event广播event_type,model_name, model_name, backendID等事件信息。 # 是否涉及UT/ST - [x] 是 - [ ] 否(说明理由) # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!334 | 3 个月前 | |
KvEvent。对接PyMoter kv-conductor,元数据操作广播 Co-authored-by: zixiqu<quzixi@huawei.com> # message auto-generated for no-merge-commit merge: !334 merge kv_event_2 into develop KvEvent Created-by: huawei_zixiqu Commit-by: zixiqu;Zixi Qu;huawei_zixiqu Merged-by: chenyz6 Description: # 合入来源 - [x] 需求 - [ ] 问题单 - [ ] issue # 问题/功能描述 PyMotor prefill节点亲和性需求。增加key store/remove/clear 广播事件,使能PyMotor kv-conductor亲和性计算。本PR基于 @彭海清 工作,在其前期多版需求对齐的半成框架下,继续工作,推动功能对齐。 # 修改方案描述 增加 csrc下增加kv_event模块,增加zmq tranfer, publisher, 对外接口runtime文件,和使能实现的kv_event文件。在meta service对应位置进行kv event广播event_type,model_name, model_name, backendID等事件信息。 # 是否涉及UT/ST - [x] 是 - [ ] 否(说明理由) # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!334 | 3 个月前 | |
feat: 更新 prometheus-cpp-lite 三方库版本至 v1.0-13-g77deead Co-authored-by: gcw_qYJeyWK4<jiangbo97@huawei.com> # message auto-generated for no-merge-commit merge: !436 merge update into develop feat: 更新 prometheus-cpp-lite 三方库版本至 v1.0-13-g77deead Created-by: gcw_qYJeyWK4 Commit-by: gcw_qYJeyWK4 Merged-by: yrewzjsx Description: # 合入来源 - [ ] 需求 - [ ] 问题单 - [x] issue # 问题/功能描述 # 修改方案描述 # 是否涉及UT/ST - [ ] 是 - [x] 否(说明理由) # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!436 | 2 个月前 | |
refactor: memcache通过运行时C ABI解耦memfabric Co-authored-by: zhangjialee<z3262749952@163.com> # message auto-generated for no-merge-commit merge: !536 merge fix/memfabric-decouple into develop refactor: memcache通过运行时C ABI解耦memfabric Created-by: zhangjialee Commit-by: zhangjialee Merged-by: chenyz6 Description: # 合入来源 - [ ] 需求 - [ ] 问题单 - [x] issue 关联 issue:[Ascend/memcache #281](https://gitcode.com/Ascend/memcache/issues/281) # 问题/功能描述 Issue #281:MemCache 将 MemFabric 作为三方库参与编译并直接使用其 C++ 类型。编译期 MF 与运行时 libmf_smem.so 的小版本或 C++ ABI 不一致时,同名 C++/STL 符号可能发生进程级抢占,MetaService 在 AccCommonServerOptions::operator=、std::string::assign 等位置 coredump。普通 dlopen 仍不足以隔离两套 C++ ABI。 # 修改方案描述 修改点: - 删除 MemCache 对 3rdparty/memfabric_hybrid 的编译、链接、头文件及 Python 包依赖,运行时固定加载 libmf_smem.so,不新增环境变量。 - ACC、ConfigStore、BM 分模块定义 def/API 封装,通过 dlopen/dlsym 调用 MF 纯 C ABI,并保持原有 C++ 驼峰调用接口。 - ConfigStore 适配类使用 ock::mmc_smem 实际命名空间,通过 ock::smem 别名保持调用侧不变,避免与 MF 原生 ock::smem C++ 符号冲突。 - dlopen 使用 RTLD_NOW | RTLD_LOCAL | RTLD_DEEPBIND,隔离 ABI0/ABI1 的 libstdc++ 弱模板符号。 - 兼容性匹配规则: - 版本来源:MMC 和 MF 均使用各自根目录的 VERSION。 - 版本编码:高 16 位为 major,低 16 位为 minor。 - 匹配条件:MMC 与运行时 MF 的 major.minor 必须完全一致,patch 不参与匹配。 - 当前分支:develop 为 1.3.x,仅匹配 MF 1.3.x;1.1.x、1.2.x 等其他版本线均拒绝加载。 - 必需接口:MF 必须导出 smem_get_abi_version,以及 MMC 实际使用的 ACC、ConfigStore、BM 模块全部必需 C ABI 符号。 - 失败行为:任一必需符号缺失或版本不匹配,均记录期望/实际版本或缺失符号并快速退出,避免 coredump。 - 结构长度:当前没有独立的结构长度字段校验,C ABI 结构布局兼容性由相同 major.minor 约束。 - Python 绑定的复制方向默认值显式转换为 int32_t,避免未注册枚举导致模块导入失败。 # 测试结果: 验证结果: - 构建与单元测试:develop DEBUG 构建成功,release/1.2 完整构建 221/221 成功;test_mf_smem_api 2/2 PASSED。 - C++ ABI 组合启动:同一 MMC 产物分别加载采用 libstdc++ ABI0、ABI1 构建的兼容版本 MF,MetaService 均启动成功,/health 返回 HTTP 200。 - 异常依赖启动:缺少 libmf_smem.so、缺少 smem_get_abi_version、缺少模块必需符号或 major.minor 不匹配时,均输出明确错误并快速退出,无 core。 - ELF 解耦检查:libmf_memcache.so 不包含对 libmf_smem.so、libacc_tcp_net.so 的 DT_NEEDED,也不存在未解析 ock::smem C++ 符号。 - CPU/host_shm benchmark:MF ABI0、ABI1 组合均完成写读,读取返回 0,逐轮写读校验和一致。 - NPU 基础初始化:acl.init 及两张 NPU 卡的 acl.rt.set_device 均返回 0,MetaService 健康检查通过。 - 双卡 device_sdma benchmark:每卡写读 256 MiB;卡 1 写/读 1.616/1.463 GB/s,写读校验和均为 1070032372;卡 2 写/读 1.571/1.481 GB/s,写读校验和均为 1069712602;读取返回 0,无 core。 - 四卡端到端推理验证: - 软件组合:vLLM 0.23.0、Qwen3-32B-W8A8、TP=4;模型列表接口返回 HTTP 200,聊天冒烟请求成功生成 64 tokens,各 TP worker 加载约 9.994 GiB 权重。 - 并发 1:8/8 请求成功、0 失败;耗时 19.58 s,请求吞吐 0.41 req/s,输出吞吐 52.31 tok/s,总吞吐 470.77 tok/s;平均 TTFT 155.15 ms,P99 TTFT 172.99 ms,平均 TPOT 18.04 ms,P99 TPOT 18.08 ms。 - 并发 16:32/32 请求成功、0 失败;耗时 6.07 s,请求吞吐 5.27 req/s,输出吞吐 674.48 tok/s,峰值输出吞吐 768 tok/s,总吞吐 6070.29 tok/s;平均 TTFT 335.07 ms,P99 TTFT 364.77 ms,平均 TPOT 21.24 ms,P99 TPOT 22.30 ms。 # 是否涉及UT/ST - [x] 是:已执行,结果见“测试结果”章节 - [ ] 否(说明理由): # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!536 | 1 个月前 |