Skip to content

[ISSUE] 模型推理有优化参数或者预期的优化方案吗 #75

Closed

Description

@wenyangchou

阅读 README.md 和 dependencies.md

  • 我已经阅读过 README.md 和 dependencies.md 文件

检索 issue 和 discussion

  • 我已经确认之前没有 issue 或 discussion 涉及此 BUG

检查 Forge 版本

  • 我已经确认问题发生在最新代码或稳定版本中

你的issues

目前来看,用一张4090显卡推理,QPS超过1响应时间就很长了。在推理这块有没有优化参数或者优化方案,请求参数中有batch_size,这个参数batch合成是否意味着可以加速推理?从文档我没有看的太懂。

从压测数据来看,GPU使用率只能达到50%(worker配置的是4,batch_size设置的默认值)。

目前有优化方案或者优化路线吗?从模型工程或者算法层面有预期的优化策略吗

Activity

  1. zhzLuke96 commented on Jun 26, 2024

    @zhzLuke96
    Member

    关于计划

    • compile:编译之后能加速很多,但是需要实现 chunk padding 目前正在尝试实现
    • vllm:应该可以用 vllm 的 page attn 加速,目前不清楚效果如何,之后可能会加
    • 上游修复:官方的推理代码应该还有优化空间,(我cpu都可以跑 20it/s 但是 gpu 只能 30it/s 就很怪) 这方面就等待上游代码库提升效果了

    对于你本地的话,目前最简单有用的优化就是装上 flash attn。正确安装之后 llama model 会自己加载并使用,有一定的速度增益

    关于 batch_size,目前并不是传统意义上的 batch,因为推理依赖上下文无法完全并行,只有当满足分割条件时才会触发 batch 推理(即长文本推理), 这个 batch_size 可以理解为 max_batch_size

  2. zhzLuke96 commented on Jun 26, 2024

    @zhzLuke96
    Member
  3. wenyangchou commented on Jun 27, 2024

    @wenyangchou
    ContributorAuthor

    有4090相关的性能数据吗。

    WX20240627-090704

    我这个数据看起来好像正常,但是感觉延迟还是很高。我怀疑我这边环境有问题,从监控看,GPU使用率很低。我想看下4090的一个正常加速的数据

  4. wenyangchou commented on Jun 27, 2024

    @wenyangchou
    ContributorAuthor

    有4090相关的性能数据吗。

    WX20240627-090704

    我这个数据看起来好像正常,但是感觉延迟还是很高。我怀疑我这边环境有问题,从监控看,GPU使用率很低。我想看下4090的一个正常加速的数据

    Concurrent Requests: 1
    P99 Response Time: 1.129 seconds
    Average Response Time: 0.846 seconds
    -----------------------
    Concurrent Requests: 2
    P99 Response Time: 2.488 seconds
    Average Response Time: 2.072 seconds
    -----------------------
    Concurrent Requests: 3
    P99 Response Time: 5.034 seconds
    Average Response Time: 3.964 seconds
    -----------------------
    Concurrent Requests: 4
    P99 Response Time: 7.924 seconds
    Average Response Time: 6.559 seconds
    -----------------------
    Concurrent Requests: 5
    P99 Response Time: 10.663 seconds
    Average Response Time: 9.597 seconds
    -----------------------
    

    现象来看,响应时间跟并发成正比,感觉是并发没做起来。导致我整体的GPU使用率都提不上去

  5. zhzLuke96 commented on Jun 28, 2024

    @zhzLuke96
    Member

    有4090相关的性能数据吗。
    WX20240627-090704
    我这个数据看起来好像正常,但是感觉延迟还是很高。我怀疑我这边环境有问题,从监控看,GPU使用率很低。我想看下4090的一个正常加速的数据

    Concurrent Requests: 1
    P99 Response Time: 1.129 seconds
    Average Response Time: 0.846 seconds
    -----------------------
    Concurrent Requests: 2
    P99 Response Time: 2.488 seconds
    Average Response Time: 2.072 seconds
    -----------------------
    Concurrent Requests: 3
    P99 Response Time: 5.034 seconds
    Average Response Time: 3.964 seconds
    -----------------------
    Concurrent Requests: 4
    P99 Response Time: 7.924 seconds
    Average Response Time: 6.559 seconds
    -----------------------
    Concurrent Requests: 5
    P99 Response Time: 10.663 seconds
    Average Response Time: 9.597 seconds
    -----------------------
    

    现象来看,响应时间跟并发成正比,感觉是并发没做起来。导致我整体的GPU使用率都提不上去

    这是开了 --workers 之后测的吗?启动参数是怎么样的?

  6. locked and limited conversation to collaborators on Jul 2, 2024
  7. converted this issue into a discussion #86 on Jul 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions