lenML / ChatTTS-Forge

🍦 ChatTTS-Forge is a project developed around the TTS generation model ChatTTS, implementing an API Server and a Gradio-based WebUI.
https://huggingface.co/spaces/lenML/ChatTTS-Forge
GNU Affero General Public License v3.0
456 stars 58 forks source link

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

Closed wenyangchou closed 5 days ago

wenyangchou commented 1 week ago

阅读 README.md 和 dependencies.md

检索 issue 和 discussion

检查 Forge 版本

你的issues

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

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

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

zhzLuke96 commented 1 week ago

关于计划

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

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

zhzLuke96 commented 1 week ago

相关 https://github.com/2noise/ChatTTS/issues/302

wenyangchou commented 1 week ago

有4090相关的性能数据吗。

WX20240627-090704

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

wenyangchou commented 1 week ago

有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使用率都提不上去

zhzLuke96 commented 1 week ago

有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 之后测的吗?启动参数是怎么样的?