chenkui164 / FastASR

这是一个用C++实现ASR推理的项目,它依赖很少,安装也很简单,推理速度很快,在树莓派4B等ARM平台也可以流畅的运行。 支持的模型是由Google的Transformer模型中优化而来,数据集是开源wenetspeech(10000+小时)或阿里私有数据集(60000+小时), 所以识别效果也很好,可以媲美许多商用的ASR软件。
Apache License 2.0
472 stars 72 forks source link

请问是否支持多线程并发 #39

Closed Tian14267 closed 1 year ago

Tian14267 commented 1 year ago

大神好,请问这个FastASR是否支持多线程并发服务?

chenkui164 commented 1 year ago

可以的,每个线程都单独new一个实例即可

Tian14267 commented 1 year ago

可以的,每个线程都单独new一个实例即可

@chenkui164 大神你好,我使用conformer_online_wenetspeech-zh-16k模型测试 进行python版本的流式部署和测试发现,并不支持并发啊。并发时间和并发路数成完全的正比~比如一个并发调用耗时5s,两个并发调用就耗时10s。。。我启动了多个模型预测器和实例。

chenkui164 commented 1 year ago

是的,在推理过程中已经多线程推理了。并发只会抢占CPU的资源,降低单个实例推理速度。

Tian14267 commented 1 year ago

是的,在推理过程中已经多线程推理了。并发只会抢占CPU的资源,降低单个实例推理速度。

@chenkui164 大神你好。如果我想实现python的并发调用?可以用这个项目实现吗?流式识别部署,并发调用。调用耗时不会显著增长的那种~~

chenkui164 commented 1 year ago

抱歉,并没有更好的办法

znsoftm commented 1 year ago

底层的openblas库已经是多线程支持,对于AI推理程序,建议排队处理为好。 多线程并发并不能提升性能,反而会因为任务切换导致多个任务的总耗时增加。