Tlntin/Qwen-TensorRT-LLM

triron部署成功后,每个卡上多出来几个进程

Closed this issue · 12 comments

大佬有没有遇到这种情况啊
image

正常的,多卡通信用的。

正常的,多卡通信用的。

ok,感谢大佬回复

正常的,多卡通信用的。

还有就是,使用triton部署后,发现推理速度和使用python差不多呀,我没有启用inflight_batch。
但是启用inflight_batch后,发现速度还慢了

按道理来讲,使用triton里面逻辑都是纯c++的,效率应该很高,速度要快一些啊

还有就是,使用triton部署后,发现推理速度和使用python差不多呀,我没有启用inflight_batch。 但是启用inflight_batch后,发现速度还慢了

按道理来讲,使用triton里面逻辑都是纯c++的,效率应该很高,速度要快一些啊

大批量/多线程请求的时候会快一些,大概15%?

还有就是,使用triton部署后,发现推理速度和使用python差不多呀,我没有启用inflight_batch。 但是启用inflight_batch后,发现速度还慢了
按道理来讲,使用triton里面逻辑都是纯c++的,效率应该很高,速度要快一些啊

大批量/多线程请求的时候会快一些,大概15%?

👌。我再测试一下

#62
参考这位的,8个以上请求,triton性能会有显著增加。

#62
参考这位的,8个以上请求,triton性能会有显著增加。

好的,感谢大佬提示

还有个问题请教一下大佬。
我使用这个代码测试:
https://github.com/Tlntin/Qwen-TensorRT-LLM/blob/main/examples/qwen/triton_client/inflight_batcher_llm_client.py

batch_size=1的时候是正常的
batch_size=2的时候就报错。

[StatusCode.INVALID_ARGUMENT] Input "input_lengths" batch size dose not match other inputs for 'tensorrt_llm'。

看样子是纬度有问题。
input_ids 的纬度是[2, 255]
input_lengths的纬度是[2, 1]

这俩纬度应该是对的呀

还有个问题请教一下大佬。 我使用这个代码测试: https://github.com/Tlntin/Qwen-TensorRT-LLM/blob/main/examples/qwen/triton_client/inflight_batcher_llm_client.py

batch_size=1的时候是正常的 batch_size=2的时候就报错。

[StatusCode.INVALID_ARGUMENT] Input "input_lengths" batch size dose not match other inputs for 'tensorrt_llm'。

看样子是纬度有问题。 input_ids 的纬度是[2, 255] input_lengths的纬度是[2, 1]

这俩纬度应该是对的呀

这个脚本用来模拟infight-batch功能的,开了inflight-batching后,默认只能单batch,通过多线程来模拟并发请求,由服务端自动组batch。

启用infight-batch后,我使用ab进行并发压力测试,测试时候,一直报

RequestId xxxxxxx is already in process, request is ignored

貌似有进程站资源,其他的request就被忽略了

启用infight-batch后,我使用ab进行并发压力测试,测试时候,一直报

RequestId xxxxxxx is already in process, request is ignored

貌似有进程站资源,其他的request就被忽略了

每个线程用不同的request_id,这个相当于用户身份,一般不能重复,重复了,triton那边会认为是同一个请求。

启用infight-batch后,我使用ab进行并发压力测试,测试时候,一直报
RequestId xxxxxxx is already in process, request is ignored
貌似有进程站资源,其他的request就被忽略了

每个线程用不同的request_id,这个相当于用户身份,一般不能重复,重复了,triton那边会认为是同一个请求。

好的,谢谢大佬~