GPT-SoVITS icon indicating copy to clipboard operation
GPT-SoVITS copied to clipboard

Inference Speed Benchmark 推理速度测评 [COME AND SHARE YOUR SPEED!]

Open JunityZhan opened this issue 1 year ago • 34 comments

I hope that everyone enter this issue can share your system, CPU, GPU, inference speed in GPT stage, and the version you use(better to compare v2 as a standard). so that we could see how different metrics affect the inference speed of GSV. 我希望大家可以分享一下你们的系统,cpu,gpu,在GPT的时候的推理速度,还有你用的gsv的版本。 这样我们可以看看到底哪些指标会影响GSV的推理速度 我先分享几个 I will share some of my experiments.

  1. ubuntu 22, nvidia driver version 550, cuda 12.1, 4090, epyc 9654, gsv2: 260 tokens/s
  2. WSL2, nvidia driver version: newest on Windows, cuda 11.8, 4090d, i7 14700kf, gsv2: 210 tokens/s
  3. ubuntu 22, 10th intel cpu, cuda 11.8, l4 or A100 (almost same speed), gsv2: 95 tokens/s
  4. ( I see in other issue)4090 + AMD Ryzen 9 7900X GSV1 (you can consider it as fast as gsv2) 400 it/s
  5. (I see in other issue) 4090 + i9 13900 GSV1 torch script(you can consider it as fast as gsv2) 585 it/s

JunityZhan avatar Sep 09 '24 21:09 JunityZhan

还得有batch和文本数量、token总长不然没法对比的

RVC-Boss avatar Sep 10 '24 03:09 RVC-Boss

还得有batch和文本数量、token总长不然没法对比的

既然设了1500这个限制,实际上不会差多少,1499 token推到1500和1推到2速度真差不多,batch size 1统一1即可,但实际上实测1到8都差不多(比较新的卡)

JunityZhan avatar Sep 10 '24 10:09 JunityZhan

我最近也在对比速度,参数全部默认,模型是v2的,我发现进行推理的时候,amd的总能把所有cpu核心都跑起来,intel则会有很多核心闲置,设置torch.set_num_threads()也没有效果,不知道有没有办法优化

XianYue0125 avatar Sep 11 '24 03:09 XianYue0125

我最近也在对比速度,参数全部默认,模型是v2的,我发现进行推理的时候,amd的总能把所有cpu核心都跑起来,intel则会有很多核心闲置,设置torch.set_num_threads()也没有效果,不知道有没有办法优化

请问有没有具体的数据呢,比如amd多快intel多快

JunityZhan avatar Sep 11 '24 05:09 JunityZhan

之前是用i9 13900+4090的笔记本和amd 7945+4060的笔记本作比较,amd要稍快一些,我这几天多测一些数据

用GPT-SoVITS-v2-240821.7z的版本,v2,勾选并行推理版本,其他全默认,可以吧

XianYue0125 avatar Sep 11 '24 06:09 XianYue0125

windows11 + amd 7945HX + 4060laptop + CUDA12.6 + GSV1 = 190it/s windows11 + amd 7945HX + 4060laptop + CUDA12.6 + GSV2 = 185it/s windows11 + amd 5800 + 4070 + CUDA12.4 + GSV2 = 80it/s

XianYue0125 avatar Sep 11 '24 06:09 XianYue0125

windows11 + amd 7945HX + 4060laptop + 无CUDA + GSV2 = 185it/s

你下pytorch的时候会把cuda给装了的,所以这里肯定是有cuda的

JunityZhan avatar Sep 11 '24 06:09 JunityZhan

windows11 + amd 7945HX + 4060laptop + 无CUDA + GSV2 = 185it/s

你下pytorch的时候会把cuda给装了的,所以这里肯定是有cuda的

嗯,我记得有个地方能看到来着,刚才cmd里面nvcc -V没反应,我以为没装,看了下是12.6

XianYue0125 avatar Sep 11 '24 06:09 XianYue0125

  1. ubuntu22 + 13th Gen Intel(R) Core(TM) i7-13700K + RTX4090 + nvidia:550.100 + cuda12.1 + gsv2 = 350it/s
  2. ubuntu22 + Intel(R) Xeon(R) Platinum 8362 CPU @ 2.80GHz + RTX3090 + nvidia: 550.67 + cuda12.1 + gsv2 = 100it/s
  3. ubuntu22 + Intel(R) Xeon(R) Platinum 8352V CPU @ 2.10GHz + RTX4090 + nvidia:550.107.02 + cuda12.1 + gsv2 = 75it/s

tobeornottoer avatar Sep 11 '24 09:09 tobeornottoer

windows11 + i9 13900+ 4090 + CUDA12.6 + GSV1 = 140it/s windows11 + i9 13900+ 4090 + CUDA12.6 + GSV2 = 155it/s

和理想的速度有很大出入,不知道问题出在哪里

XianYue0125 avatar Sep 11 '24 09:09 XianYue0125

windows11 + 13900k+ 4090 + CUDA12.6 + GSV2 150-155it/s 和linux差这么多吗?

byykt avatar Sep 11 '24 15:09 byykt

windows10 + 11700K+ 4060ti+ CUDA11.8 + GSV2 110it/s

UPeveryday avatar Sep 13 '24 03:09 UPeveryday

并行,bs=1:windows10 + 12490+ 3080+ CUDA11.8 + GSV2 130it/s 不开并行推理,能到 170 it/s

flymorn avatar Sep 14 '24 16:09 flymorn

image

ubuntu22 + 13900k + 4090 + CUDA12.4 + GSV2 = 500it/s

这个和我上面windows11那个测试所用的机器是同一台,用的是完全一样的硬件,新加了一条固态,m.2的PCIE也是一样的,安装了ubuntu22.04.5,测试500it/s,windows11只有150it/s左右。

XianYue0125 avatar Sep 19 '24 09:09 XianYue0125

我才用https://www.codewithgpu.com/i/RVC-Boss/GPT-SoVITS/GPT-SoVITS-Official,速度很差,有参考音频,只有56,60 it/s。输出16秒的音频,需要8.49秒,还是很长。edgetts只要3.67秒,有办法提高吗? image 运行时,GPU nvidia-smi反映的使用率只有6%左右,而top load在2-3.

虚机配置: cpu:14核,Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz memory:182GB GPU:RTX 3090 系统:宿主机ubuntu20.04 , docker 里面是20.04 cuda:cuda_11.8.r11.8/compiler.31833905_0 另外,从inference_webui.py 判读使用的时cuda。 if torch.cuda.is_available(): device = "cuda" else: device = "cpu" print(f"device = {device}") ==> 返回cuda

ThornbirdZhang avatar Sep 22 '24 06:09 ThornbirdZhang

想问一下是否有 amd的cpu linux的系统 这样的组合,测试一下速度,想对比一下cpu的影响,因为amd很多全大核,intel很多大小核,cpu的调度可能会影响推理速度

XianYue0125 avatar Sep 24 '24 05:09 XianYue0125

想问一下是否有 amd的cpu linux的系统 这样的组合,测试一下速度,想对比一下cpu的影响,因为amd很多全大核,intel很多大小核,cpu的调度可能会影响推理速度

image 你是说这种吗

Chi8wah avatar Sep 27 '24 15:09 Chi8wah

想问一下是否有 amd的cpu linux的系统 这样的组合,测试一下速度,想对比一下cpu的影响,因为amd很多全大核,intel很多大小核,cpu的调度可能会影响推理速度

image 你是说这种吗

最好是普通个人电脑的配置,这个太夸张了😂

XianYue0125 avatar Sep 28 '24 06:09 XianYue0125

想问一下是否有 amd的cpu linux的系统 这样的组合,测试一下速度,想对比一下cpu的影响,因为amd很多全大核,intel很多大小核,cpu的调度可能会影响推理速度

国内租gpu平台不全是amd吗,你可以看看autodl

JunityZhan avatar Sep 28 '24 07:09 JunityZhan

补一条 Ubuntu 24 10, nvidia driver version: newest, cuda 12.1, 4090d, i7 14700kf, gsv2: 530 tokens/s

JunityZhan avatar Oct 11 '24 12:10 JunityZhan

image

ubuntu22 + 13900k + 4090 + CUDA12.4 + GSV2 = 500it/s

这个和我上面windows11那个测试所用的机器是同一台,用的是完全一样的硬件,新加了一条固态,m.2的PCIE也是一样的,安装了ubuntu22.04.5,测试500it/s,windows11只有150it/s左右。

我看图中,你的进程应该就是33964进程吧,我看能占用11g左右的显存,我这边用python api_v2.py只占用了4个G。想问一下,你这边是直接用python api_v2.py的吗?而且你这里面的500it/s,我觉得挺快,我这只有100不到。再请教一下,GSV2是什么?

daiDai-study avatar Oct 15 '24 13:10 daiDai-study

image ubuntu22 + 13900k + 4090 + CUDA12.4 + GSV2 = 500it/s 这个和我上面windows11那个测试所用的机器是同一台,用的是完全一样的硬件,新加了一条固态,m.2的PCIE也是一样的,安装了ubuntu22.04.5,测试500it/s,windows11只有150it/s左右。

我看图中,你的进程应该就是33964进程吧,我看能占用11g左右的显存,我这边用python api_v2.py只占用了4个G。想问一下,你这边是直接用python api_v2.py的吗?而且你这里面的500it/s,我觉得挺快,我这只有100不到。再请教一下,GSV2是什么?

GSV2应该算是新版的GPT-SoVITS,启动的时候控制台会有显示,网页里面也有v2的选项,会有不少优化 image

显存这块也是经你提醒我才注意到,不知道怎么占用到11G的,可能和这些有关 image

你可以试一下启用和关闭的区别

XianYue0125 avatar Oct 16 '24 05:10 XianYue0125

感觉瓶颈在cpu单核性能(intel+win11) 我好几台不同显卡 跑出来的速度都差不多的 100 -150 而且cpu有别的占用的时候会会更慢

AudareLesdent avatar Oct 29 '24 02:10 AudareLesdent

V2: Ubuntu 20.04.5 + RTX 3090 24G +16核 AMD EPYC 7502 + Cuda V11.7.99 + Driver 550.90.07 + batch_size 1 = 95 it/s Ubuntu 22.04.4 + A100 SXM4 80G + 8核 AMD EPYC 7742 + Cuda V12.1.105 + Driver 525.147.05 + batch_size 1 = 92 it/s Ubuntu 20.04.5 + RTX 4090 24G+ 32核 Core™ i9-14900K + Cuda V11.7.99 + Driver Version: 550.120 + batch_size 1 = 445 it/s 貌似是跟CPU关系更大?

Chi8wah avatar Nov 20 '24 08:11 Chi8wah

image

ubuntu22 + 13900k + 4090 + CUDA12.4 + GSV2 = 500it/s

这个和我上面windows11那个测试所用的机器是同一台,用的是完全一样的硬件,新加了一条固态,m.2的PCIE也是一样的,安装了ubuntu22.04.5,测试500it/s,windows11只有150it/s左右。

请问您是用wsl装的ubuntu吗,谢谢

skywalkerLGY avatar Dec 29 '24 13:12 skywalkerLGY

image ubuntu22 + 13900k + 4090 + CUDA12.4 + GSV2 = 500it/s 这个和我上面windows11那个测试所用的机器是同一台,用的是完全一样的硬件,新加了一条固态,m.2的PCIE也是一样的,安装了ubuntu22.04.5,测试500it/s,windows11只有150it/s左右。

请问您是用wsl装的ubuntu吗,谢谢

没有用wsl,直接新加了一个固态安装的ubuntu,双系统

XianYue0125 avatar Dec 31 '24 02:12 XianYue0125

AMD EPYC 7642 48C + 4090 Baseline 80it/s with BS 20 BS 20 225 it/s after compilation 190 it/s with CUDA Graph BS 1 900 it/s with CUDA Graph

XXXXRT666 avatar Mar 08 '25 07:03 XXXXRT666

update: 400it/s Batch Size 20 AMD EPYC 7642 48C + RTX 4090 with CUDA Graph and Flash Attention

XXXXRT666 avatar Mar 18 '25 06:03 XXXXRT666

Image

Image

windows11 + amd 5800 + 4070 + (torch-2.4.1+cu124.dist-info) + Flash Attention

600it/s

XianYue0125 avatar Apr 10 '25 09:04 XianYue0125

有个问题想咨询一下,就是这个runtime环境,我已经配置好了 Flash Attention,webui推理速度能达到600it/s,同样的环境api_v2还是只有100it/s, "split_bucket": True, "parallel_infer": True, "repetition_penalty": 1.35 这些都设置过了,也不行,是需要修改api_v2更底层的推理部分吗

XianYue0125 avatar Apr 10 '25 09:04 XianYue0125