相关疑难解决方法(0)

使用CUDA在GPU上进行图像处理的多线程

问题陈述: 我必须连续处理从相机捕获的8百万像素图像。上面必须有几种图像处理算法,例如颜色插值,颜色转换等。这些操作在CPU上将花费很长时间。因此,我决定使用CUDA内核在GPU上执行这些操作。我已经编写了可工作的CUDA内核用于颜色转换。但是我仍然需要进一步提高性能。

基本上有两个计算时间:

  1. source image从CPU 复制到GPU,反之亦然
  2. source imageGPU的处理

当图像从CPU复制到GPU时...。同样,当在GPU上处理图像时,其他任何事情都不会发生。

我的想法:我想进行多线程处理,以便节省时间。我想在GPU上进行前一张图像的处理时捕获下一张图像。并且,当GPU完成前一个图像的处理时,下一个图像已经在那里,可以将其从CPU传输到GPU。

我需要什么:我对多线程世界完全陌生。我正在看一些教程和其他一些东西,以了解更多有关它的信息。因此,我正在寻找有关适当步骤和适当逻辑的一些建议。

c++ multithreading

-1
推荐指数
1
解决办法
2690
查看次数

标签 统计

c++ ×1

multithreading ×1