InternLM / lmdeploy

LMDeploy is a toolkit for compressing, deploying, and serving LLMs.
https://lmdeploy.readthedocs.io/en/latest/
Apache License 2.0
4.33k stars 389 forks source link

[Bug] LLaVA 多个并发请求某张卡利用率为0,剩余的卡利用率为100% #1333

Closed DreamMr closed 5 months ago

DreamMr commented 6 months ago

Checklist

Describe the bug

您好,我在8*A800的机器上部署LLaVA的推理服务,并发数量为2,运行一段时间后,某张卡的利用率变成0,其他卡的利用率变成100%,显存也没释放掉,client也获取不到response,程序一直卡住。

8e48e4e2d5441e798102ba75397b5e3

我打印logger,提示我total sequence length 超过预设的最大长度(32000),但是我每次请求都是同一个样本(同样的图片和同样的文本),不清楚是否是该问题引起的。

image

Reproduction

Server

lmdeploy serve api_server liuhaotian/llava-v1.5-13b --server-port 23333 --chat-template ./chat_template_vicuna.json --model-name liuhaotian/llava-v1.5-13b --tp 8 --cache-max-entry-count 0.9 --session-len 32000 --max-batch-size 8 --log-level WARNING

chat_template_vicuna.json:👇

{
    "model_name": "vicuna",
    "system": null,
    "meta_instruction": null,
    "eosys": null,
    "user": null,
    "eoh": null,
    "assistant": null,
    "eoa": null,
    "separator": null,
    "capability": null,
    "stop_words": null
}

Client

from openai import OpenAI
from PIL import Image
import concurrent.futures

def run(idx):
    for i in range(100):
        print("{} running on {}.".format(idx,i))
        client = OpenAI(api_key='YOUR_API_KEY', base_url='http://0.0.0.0:23333/v1')
        model_name = client.models.list().data[0].id
        print(client.models.list())
        print(model_name)
        img_base64 = "data:image,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"
        response = client.chat.completions.create(
            model=model_name,
            messages=[{
                'role':
                'user',
                'content': [{
                    'type': 'text',
                    'text': 'Describe the image please',
                }, {
                    'type': 'image_url',
                    'image_url': {
                        'url':
                        img_base64,
                    },
                }],
            }],
            temperature=0.2,
            top_p=0.8)
    #print(response.choices[0].message.content)
    return "finish"

if __name__ == '__main__':
    idx = [i for i in range(64)]
    with concurrent.futures.ThreadPoolExecutor(max_workers=2) as executor:
        results = executor.map(run,idx)

    for result in results:
            if result is not None:
                res.update(result)

Environment

sys.platform: linux
Python: 3.10.13 (main, Sep 11 2023, 13:44:35) [GCC 11.2.0]
CUDA available: True
MUSA available: False
numpy_random_seed: 2147483648
GPU 0,1,2,3,4,5,6,7: NVIDIA A800-SXM4-80GB
CUDA_HOME: /usr/local/cuda
NVCC: Cuda compilation tools, release 11.8, V11.8.89
GCC: gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
PyTorch: 2.1.2+cu121
PyTorch compiling details: PyTorch built with:
  - GCC 9.3
  - C++ Version: 201703
  - Intel(R) oneAPI Math Kernel Library Version 2022.2-Product Build 20220804 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v3.1.1 (Git Hash 64f6bcbcbab628e96f33a62c3e975f8535a7bde4)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: AVX512
  - CUDA Runtime 12.1
  - NVCC architecture flags: -gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_90,code=sm_90
  - CuDNN 8.9.2
  - Magma 2.6.1
  - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=12.1, CUDNN_VERSION=8.9.2, CXX_COMPILER=/opt/rh/devtoolset-9/root/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=0 -fabi-version=11 -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -Wno-invalid-partial-specialization -Wno-unused-private-field -Wno-aligned-allocation-unavailable -Wno-missing-braces -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.1.2, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=1, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF, 

TorchVision: 0.15.2+cu117
LMDeploy: 0.2.6+
transformers: 4.38.1
gradio: Not Found
fastapi: 0.103.2
pydantic: 1.10.13

Error traceback

No response

irexyc commented 6 months ago

不是你这个logger里面的warning引起的。max_new_tokens 不传的话,默认是尽可能的大,不过这个逻辑跟引擎那边的逻辑差了1,所以有这个warning。

我这边可以复现你的问题,发现卡在了这里 https://github.com/InternLM/lmdeploy/blob/cd2d880abfc3bb4225574cce8efa4e89be0b95d8/lmdeploy/serve/vl_async_engine.py#L55

不确定是不是因为多卡的时候,初始化的时候vision模型放到了最后一张卡,但是推理的时候,当前的device是第一张卡的缘故。用 with torch.device() 这个context包一下,试了几遍没有再卡住了。

lvhan028 commented 6 months ago

@zhulinJulia24 请加入测试用例

wanzhenchn commented 6 months ago

不是你这个logger里面的warning引起的。max_new_tokens 不传的话,默认是尽可能的大,不过这个逻辑跟引擎那边的逻辑差了1,所以有这个warning。

我这边可以复现你的问题,发现卡在了这里

https://github.com/InternLM/lmdeploy/blob/cd2d880abfc3bb4225574cce8efa4e89be0b95d8/lmdeploy/serve/vl_async_engine.py#L55

不确定是不是因为多卡的时候,初始化的时候vision模型放到了最后一张卡,但是推理的时候,当前的device是第一张卡的缘故。用 with torch.device() 这个context包一下,试了几遍没有再卡住了。

楼主这个情况我也遇到了,当调用很多次时候,会出现服务卡住的情况,如下图: image

提个MR 修复一下吧 @irexyc

irexyc commented 6 months ago

@wanzhenchn @DreamMr

PR 1336 修了一下,但是有反馈还是不行,你这边方便测试一下么?

deeplearningshare commented 6 months ago

不要pip install安装,使用https://github.com/InternLM/lmdeploy/releases/tag/v0.2.6下的whl安装,它是cuda12编译,pypi是cuda11.8编译

wanzhenchn commented 5 months ago

@wanzhenchn @DreamMr

PR 1336 修了一下,但是有反馈还是不行,你这边方便测试一下么?

刚才跑了一下0.3.0 版本,在 tp=2时候,还是会出现 卡住 现象。(从源码编译安装的 lmdeploy) @irexyc

image

irexyc commented 5 months ago

@wanzhenchn

请确认一下lmdeploy 和 pytorch 用的是相同的cuda大版本。

pytorch:

import torch
print(torch.vision.cuda)

lmdeploy:

# 找到安装目录
python -c "import lmdeploy; print(lmdeploy)"

# ldd
ldd xxx/lib/_turbomind.cpython-xx-x86_64-linux-gnu.so
lvhan028 commented 5 months ago

closing it since no more activities in two weeks. Feel free to reopen it if it is still an issue