BabitMF / bmf

Cross-platform, customizable multimedia/video processing framework. With strong GPU acceleration, heterogeneous design, multi-language support, easy to use, multi-framework compatible and high performance, the framework is ideal for transcoding, AI inference, algorithm integration, live video streaming, and more.
https://babitmf.github.io/
Apache License 2.0
809 stars 71 forks source link

线程池相关 #139

Open x850044053wwt opened 3 weeks ago

x850044053wwt commented 3 weeks ago

引擎层scheduler_queue创建了指定数量的线程,应用层动态创建graph过程中,线程缺少管理方案,未来有考虑线程池方案吗。或者能将exec_loop发送给外部线程池管理吗

sfeiwong commented 3 weeks ago

目前这方面的需求不太强,原因有几个:

  1. 线程数量不多。框架引擎层的线程使用数量是相对固定的,且数量较少,只用于多个scheduler。
  2. 线程没有频繁的创建销毁动作。

给外部线程池管理,是从哪些角度的考虑?

x850044053wwt commented 3 weeks ago

目前这方面的需求不太强,原因有几个:

  1. 线程数量不多。框架引擎层的线程使用数量是相对固定的,且数量较少,只用于多个scheduler。
  2. 线程没有频繁的创建销毁动作。

给外部线程池管理,是从哪些角度的考虑?

单个graph的线程使用数量相对固定,多个(3~5个)graph,同时单个graph动态更新时,线程会频繁创建销毁

sfeiwong commented 3 weeks ago

单个graph的线程使用数量相对固定,多个(3~5个)graph,同时单个graph动态更新时,线程会频繁创建销毁

动态更新场景是个值得加入线程池的地方。 如果有可参考的这种demo,后续可以基于demo场景专门做一波优化。