Main Content

GPU 上的图像处理

为了利用现代图形处理单元 (GPU) 提供的性能优势,某些 Image Processing Toolbox™ 函数支持在 GPU 上执行图像处理运算。这可以为复杂的图像处理工作流提供 GPU 加速。这些方法可以单独实现,也可以组合实现,以满足具体设计要求和性能目标。

要在图形处理单元 (GPU) 上运行图像处理代码,您必须拥有 Parallel Computing Toolbox™ 软件。要在 GPU 上执行支持的图像处理运算,请执行以下步骤:

  • 将数据从 CPU 移到 GPU。使用 gpuArray (Parallel Computing Toolbox) 函数将数组从 MATLAB® 传输到 GPU。有关详细信息,请参阅Create GPU Arrays from Existing Data (Parallel Computing Toolbox)

  • 在 GPU 上执行图像处理运算。有关支持 GPU 的所有工具箱函数的列表,请参阅支持 GPU 计算的函数

  • 将数据从 GPU 移回 CPU。使用 gather (Parallel Computing Toolbox) 函数从 GPU 中检索数组,并将该数组作为常规的 MATLAB 数组传输到 MATLAB 工作区。

如果您使用至少一个 gpuArray (Parallel Computing Toolbox) 输入参数调用支持 GPU 的函数,则该函数会在 GPU 上自动运行,并生成结果 gpuArray。您可以在同一个函数调用中同时使用 gpuArray 和 MATLAB 数组来混合输入。在这种情况下,该函数自动将 MATLAB 数组传输到 GPU 来执行。

使用 GPU 时,请注意以下几点:

  • 性能的提高可能取决于 GPU 设备。

  • GPU 上返回的结果与 CPU 上返回的结果可能稍有差异。

要了解如何将自定义 CUDA 内核直接集成到 MATLAB 中以加速复杂算法,请参阅Run CUDA or PTX Code on GPU (Parallel Computing Toolbox)

另请参阅

(Parallel Computing Toolbox) | (Parallel Computing Toolbox)

相关示例

详细信息