1
1
DCU技术达人
新人贴
一文搞定海光DCU模型部署与可视化监控:GLM-5.1部署到性能可视化全流程
2026-10-13 15:44:37
43
# 一文搞定海光DCU模型部署与可视化监控:GLM-5.1部署到性能可视化全流程 > 本文面向AI算法工程师、运维人员、国产算力适配从业者,全程可复现,从0到1走通海光BW1100 DCU上大模型部署、推理、性能监控的完整链路,避免踩坑。 ![1791877361785.png](/api-forum/file/RedirectImage?path=20261013/1791877361996_1791877361785.jpg '1791877361785.png') ## 前置说明 本次实操用到的核心组件如下: | 组件 | 用途 | 要求 | | ------------------------------- | -------------------- | --------------------------------------------------- | | 海光BW1100 DCU | 国产算力硬件 | 至少8卡(适配GLM-5.1-FP8最低要求)、驱动版本≥6.2.26 | | GLM-5.1-FP8 | 智谱AI最新旗舰大模型 | 仅支持BW1100/BW1101系列DCU | | vLLM/SGLang | 推理框架 | 我们提供预适配DTK26.04的官方镜像,无需手动编译 | | dcu-exporter+Prometheus+Grafana | 监控栈 | 实现DCU硬件指标+推理服务业务指标的全链路可视化 | --- ## 一、模型与环境准备 ### 1.1 本次部署的模型介绍:GLM-5.1 GLM-5.1是智谱AI面向智能体场景的下一代旗舰模型,相比前代能力提升非常明显: - 代码能力登顶SWE-Bench Pro,NL2Repo(代码仓库生成)、Terminal-Bench 2.0指标远超GLM-5 - 独有的长会话迭代能力:支持数百轮交互、数千次工具调用,运行时间越长输出效果越好,不会像传统模型一样 early stop 能力枯竭 - FP8量化版本大小754B,刚好适配海光BW1100的FP8硬件加速能力,性价比拉满 ![1791877380339.png](/api-forum/file/RedirectImage?path=20261013/1791877380605_1791877380339.jpg '1791877380339.png') ### 1.2 环境依赖与镜像拉取 我们已经预打包了适配DTK26.04的推理框架镜像,无需手动编译依赖,直接拉取即可: | 推理框架 | 镜像地址 | | ------------- | ------------------------------------------------------------ | | vLLM 0.15.1 | harbor.sourcefind.cn:5443/dcu/admin/base/vllm:0.15.1--ubuntu22.04-dtk26.04-py3.10-20260409 | | SGLang 0.5.10 | harbor.sourcefind.cn:5443/dcu/admin/base/custom:sglang-0.5.10-glm5-0416 | > 更多DCU适配镜像可前往[光源平台](https://sourcefind.cn/#/service-list)下载 启动容器命令(以vLLM为例,SGLang仅需替换镜像地址即可): ```bash docker run -it \ --shm-size 256g \ --network=host \ --name glm-5.1 \ --privileged \ --device=/dev/kfd \ --device=/dev/dri \ --device=/dev/mkfd \ --group-add video \ --cap-add=SYS_PTRACE \ --security-opt seccomp=unconfined \ -u root \ -v /opt/hyhal/:/opt/hyhal/:ro \ # DCU驱动目录,必须挂载 -v /你的本地模型目录/:/容器内模型目录/ \ # 替换为你自己的模型、代码挂载路径 harbor.sourcefind.cn:5443/dcu/admin/base/vllm:0.15.1--ubuntu22.04-dtk26.04-py3.10-20260409 bash ``` ### 1.3 预训练权重下载 FP8版本仅支持BW1100系列DCU,请勿在其他型号DCU上使用: | 模型名称 | 精度 | 最低卡数 | 下载地址 | | ----------- | ---- | -------- | ------------------------------------------------------------ | | GLM-5.1-FP8 | FP8 | 8卡 | [ModelScope](https://modelscope.cn/models/ZhipuAI/GLM-5.1-FP8) | --- ## 二、模型推理部署 ### 2.1 基于vLLM部署 进入容器后先配置DCU优化环境变量(直接复制执行即可,都是官方适配的性能最优参数): ```bash # 清理缓存避免冲突 rm -rf ~/.cache rm -rf ~/.triton # 配置8卡可见 export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 # DCU通信与推理优化参数 export ALLREDUCE_STREAM_WITH_COMPUTE=1 export NCCL_MIN_NCHANNELS=16 export NCCL_MAX_NCHANNELS=16 export Allgather_Base_STREAM_WITH_COMPUTE=1 export SENDRECV_STREAM_WITH_COMPUTE=1 export HIP_KERNEL_EVENT_SYSTENFENCE=1 export VLLM_RPC_TIMEOUT=1800000 export VLLM_USE_PD_SPLIT=1 export VLLM_USE_PIECEWISE=1 export VLLM_REJECT_SAMPLE_OPT=1 export USE_FUSED_RMS_QUANT=0 export USE_FUSED_SILU_MUL_QUANT=1 export VLLM_USE_GLOBAL_CACHE13=1 export VLLM_FUSED_MOE_CHUNK_SIZE=16384 export VLLM_CUSTOM_CACHE=1 export VLLM_USE_OPT_CAT=1 export VLLM_USE_FUSED_FILL_RMS_CAT=1 export VLLM_USE_LIGHTOP_MOE_SUM_MUL_ADD=0 export VLLM_USE_LIGHTOP_RMS_ROPE_CONCAT=0 export VLLM_USE_FLASH_MLA=1 export VLLM_DISABLE_DSA=0 export USE_LIGHTOP_TOPK=1 export USE_LIGHTOP_PER_TOKEN_GROUP_QUANT_FP8=1 export USE_LIGHTOP_CONVERT_REQ_INDEX_TO_GLOBAL_INDEX=1 ``` 启动vLLM推理服务: ```bash vllm serve 你的模型本地路径 \ --gpu-memory-utilization 0.925 \ # 显存利用率上限 --port 8001 \ --tensor-parallel-size 8 \ # 8卡并行 --tool-call-parser glm47 \ --reasoning-parser glm45 \ --enable-auto-tool-choice \ --kv-cache-dtype fp8_ds_mla \ # KV缓存也用FP8,最大化显存利用率 --served-model-name glm-5.1-fp8 \ --disable-log-requests \ --compilation-config '{"pass_config": {"fuse_act_quant": false}}' ``` 启动完成后测试服务是否正常: ```bash curl http://localhost:8001/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "glm-5.1-fp8", "messages": [ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Summarize GLM-5 in one sentence."} ], "max_tokens": 4096, "temperature": 0.7, "chat_template_kwargs": {"enable_thinking": false} }' ``` > 常见报错处理: > > 1. 出现`ImportError: librocm_smi64.so.2`报错:机器hyhal驱动版本过低,升级到≥6.2.26即可 > 2. 显存不足:确认你是8卡BW1100,且模型是FP8版本 --- ### 2.2 基于SGLang部署 如果偏好SGLang框架,启动流程类似,先配置环境变量: ```bash export SGLANG_USE_LIGHTOP=1 export HIP_GRAPH_USE_CMD_CACHE=0 export SGLANG_ROCM_USE_AITER_MOE=0 ``` 启动SGLang推理服务: ```bash model_path=你的模型本地路径 # FP8模型路径 option="--numa-node 0 0 0 0 1 1 1 1 " option+=" --disable-radix-cache " option+=" --chunked-prefill-size 16384" option+=" --page-size 64 " option+=" --nsa-prefill-backend flashmla_auto --nsa-decode-backend flashmla_kv " python3 -m sglang.launch_server --model-path "${model_path}" ${option} \ --trust-remote-code \ --reasoning-parser glm45 \ --tool-call-parser glm47 \ --kv-cache-dtype fp8_e4m3 \ --dtype bfloat16 \ --mem-fraction-static 0.925 \ --host 0.0.0.0 \ --port 8001 \ --tp-size 8 \ --context-length 32768 \ --served-model-name glm-5.1-fp8 --enable-metrics --enable-mfu-metrics ``` 测试命令和vLLM完全一致,且DCU上推理精度和GPU完全一致,无需担心效果损失,切记加上--enable-metrics 、--enable-mfu-metrics这两个参数。 --- ## 三、性能监控栈搭建 模型跑起来只是第一步,我们还需要实时监控DCU硬件状态、推理服务的吞吐、延迟等指标,这里我们用官方推荐的dcu-exporter+Prometheus+Grafana栈实现全链路可视化。 ### 3.1 第一步:部署dcu-exporter采集DCU硬件指标 dcu-exporter是海光官方开源的DCU指标采集工具,会自动采集每块DCU的利用率、显存、温度、功耗、显存带宽等指标,暴露为Prometheus格式。 Docker部署命令: ```bash docker run --name dcu-exporter-v2 -d --privileged \ --device=/dev/kfd \ --device=/dev/mkfd \ --device=/dev/dri \ -v /etc/hostname:/etc/hostname \ -v /etc/vdev:/etc/vdev \ -v /opt/hyhal:/opt/hyhal \ # 挂载驱动目录 -p 16080:16080 \ -e CONNECT_K8S=false \ # 非K8s环境设为false dcu-exporter:latest ``` 验证是否部署成功:访问`http://你的DCU机器IP:16080/metrics`,可以看到大量DCU相关指标即正常。 --- ### 3.2 第二步:部署Prometheus采集指标 Prometheus负责定时拉取dcu-exporter和推理服务的指标并存储,先编写配置文件`prometheus.yml`: ```yaml global: scrape_interval: 15s # 每15秒采集一次 scrape_configs: # 采集DCU硬件指标 - job_name: 'dcu-exporter' static_configs: - targets: ['你的DCU机器IP:16080'] # 采集vLLM/SGLang推理服务指标 - job_name: 'llm-inference' static_configs: - targets: ['你的DCU机器IP:8001'] # 推理服务端口 ``` 启动Prometheus: ```bash docker run -d \ --name prometheus \ -p 9090:9090 \ -v 你的配置文件路径/prometheus.yml:/etc/prometheus/prometheus.yml \ prom/prometheus:latest ``` 访问`http://你的IP:9090`,可以看到Prometheus界面即正常。 --- ### 3.3 第三步:部署Grafana实现可视化 Grafana负责把Prometheus的指标做成直观的 Dashboard,启动命令: ```bash docker run -d \ --name grafana \ -p 3000:3000 \ grafana/grafana:latest ``` 初始账号密码都是`admin`。 #### 配置步骤: 1. 登录Grafana后,点击`Connections -> Data sources -> Add data source`,选择Prometheus,填写地址`http://你的Prometheus IP:9090`,保存测试通过。 2. 导入Dashboard: - **DCU硬件监控面板**:搜索海光官方DCU Dashboard ID,或者直接导入官方提供的JSON模板,即可看到每块卡的利用率、显存、温度、功耗等实时指标。 ![1791877434705.png](/api-forum/file/RedirectImage?path=20261013/1791877434892_1791877434705.jpg '1791877434705.png') - **LLM推理业务监控面板**:直接输入公共Dashboard ID `25502`导入,即可同时支持vLLM和SGLang的指标展示,覆盖请求量、Token吞吐、延迟分位数、KV缓存命中率、队列长度等核心业务指标,适合压测、运维场景使用。 ![1791877445690.png](/api-forum/file/RedirectImage?path=20261013/1791877445883_1791877445690.jpg '1791877445690.png') ## 四、效果展示 ![1791877459746.png](/api-forum/file/RedirectImage?path=20261013/1791877459944_1791877459746.jpg '1791877459746.png') 监控面板可以清晰看到: - 8卡BW1100的FP8算力可以完美跑满GLM-5.1-FP8,单卡利用率稳定在90%以上 - 推理吞吐和延迟表现和同级别GPU基本持平,完全满足生产环境使用要求。 --- ## 五、问题反馈与参考资料 - 部署问题反馈:[光源平台GLM-5.1适配仓库](https://developer.sourcefind.cn/codes/modelzoo/glm-5.1) - GLM-5.1官方资料:https://github.com/zai-org/GLM-5 - dcu-exporter官方仓库:https://github.com/HYGON-AI/dcu-dcgm
全部评论(1)
只看楼主
M
Morty
1楼
有压测结果吗,比如上下文长度和并发数量呢
10/17
没有更多内容了
--
楼主
Level.3
0 帖子
楼主热帖
暂无数据