GPU核心的多个视频处理流程

时间:2015-08-18 10:08:45

标签: cuda ffmpeg gpu video-processing

我们可以为GPU分配多个进程(即100-500个进程),每个进程在GPU核心上运行吗? 在我的视频处理应用中,我必须使用ffmpeg库来处理视频和音频。如果有超过100个甚至500个这样的独立进程,我想将每个进程分配给GPU会更快。但是,我不知道我们是否可以做到这一点,并且要做到这一点,需要哪些库,工具? CUDA?

1 个答案:

答案 0 :(得分:2)

  

我们可以为GPU分配多个进程(即100-500个进程),每个进程在GPU核心上运行吗?

不,你不能。通常,不可能在GPU核心本身上安排任何。这个级别的"调度"主要由CUDA架构和运行时系统的机制来处理。

基本思想是在代码中以相当低的级别暴露并行性(例如在循环级别)并且正确使用GPU加速语法(例如CUDA,OpenACC,OpenCL等),GPU通常可以使程序的这些元素运行得更快。

但GPU不是设计用于替代CPU核心的替代品。我已经提到了调度因子,以及代码通常需要专门为GPU编译的事实。