跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • 世界
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠

GPU技术交流论坛

  1. 主页
  2. 版块
  3. 知识交流
  4. 技术调优探讨
  5. LMDeploy 多卡张量并行优化指南

LMDeploy 多卡张量并行优化指南

已定时 已固定 已锁定 已移动 技术调优探讨
1 帖子 1 发布者 42 浏览 1 关注中
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • F 离线
    F 离线
    fishensl
    编写于 最后由 fishensl 编辑
    #1

    ** LMDeploy 部署后为充分发挥软硬件性能,可按自身需求组合以下优化项:**

    1、显存均衡

    a、pip安装部署的可以按照LMDeploy官方回复的解决方法

    https://github.com/InternLM/lmdeploy/issues/3518
    LMD1.png
    使用下面命令按实际文件路径修改,

    sed -i \
        -e '/def readers(self):/,/def model_info(self):/ {' \
        -e '/yield i, reader/ {' \
        -e 'a \        torch.cuda.empty_cache()' \
        -e '}' \
        -e '}' \
        /opt/lmdeploy/lmdeploy/turbomind/deploy/source_model/llama.py
    

    b、使用docker,可以dockerfile 直接生成修改好的镜像,dockerfile如下:

    # 使用基础镜像
    FROM openmmlab/lmdeploy
    
    # 设置工作目录
    WORKDIR /opt/lmdeploy/lmdeploy/turbomind/deploy/source_model/
    
    # 执行 sed 命令插入代码并安装 modelscope(合并层优化)
    RUN sed -i \
        -e '/def readers(self):/,/def model_info(self):/ {' \
        -e '/yield i, reader/ a \        torch.cuda.empty_cache()' \
        -e '}' \
        llama.py && \
        pip install modelscope
    

    cd进入dockerfile所在目录,生成显存均衡本地镜像

    docker build --no-cache -t lmdeploy-0.9-mod  .
    

    2、LMDeploy长上下文yarn配置优化参考

    模型config.json

      "rope_scaling": null,
    

    这部分修改为

      "rope_scaling": {
            "type": "yarn",
            "factor": 4.0,
            "original_max_position_embeddings": 32768
      },
    

    启动参数添加

    --session-len 131072
    

    实际可用上下文还受显存大小影响,LMDeploy启动日志中会有如

     `session_len` truncated to xxxxxx
    

    可以结合以下三个参数充分利用现有显存

    --cache-max-entry-count  推荐从0.5-0.7开始逐步调整,确保启动完成后剩余显存大于512-1024M即为稳定最大值
    --max-batch-size         推荐32,显存最够可以64甚至128(数值调小可适当增加上下文)
    --quant-policy           推荐8,显存足够可以删除该启动参数(8比无该参数可增加接近一倍上下文)
    

    3、LMDeploy T10多卡参考极限上下文参数

    双卡T10 LMDeploy TP=2 运行Qwen3-32B-AWQ 极限稳定上下文为70k
    启动关键参数为

    --cache-max-entry-count 0.80 --max-batch-size 32 --quant-policy 8   --session-len 131072
    

    四卡T10 LMDeploy TP=4 运行Qwen3-32B-AWQ 稳定上下文128k是最小参数为

    --cache-max-entry-count 0.50 --max-batch-size 64 --quant-policy 8 --session-len 131072
    

    四卡T10 LMDeploy TP=4 同时运行Qwen3-32B-AWQ 96k 和Qwen3-30B-A3B-AWQ 39k 稳定参数为
    Qwen3-32B-AWQ 96k

    --cache-max-entry-count 0.3 --max-batch-size 64 --quant-policy 8  --session-len 131072
    

    Qwen3-30B-A3B-AWQ 39k

    --cache-max-entry-count 0.37 --max-batch-size 32 --quant-policy 8 
    
    1 条回复 最后回复
    0
    回复
    • 在新帖中回复
    登录后回复
    • 从旧到新
    • 从新到旧
    • 最多赞同


    • 登录

    • 没有帐号? 注册

    • 登录或注册以进行搜索。
    • 第一个帖子
      最后一个帖子
    0
    • 版块
    • 最新
    • 标签
    • 热门
    • 世界
    • 用户
    • 群组