0

我正在研究opencv-OCL 库。我使用AMD Radeon™ HD 7400M系列 GPU。我需要对此进行一些澄清。

1) 我下载了 AMD SDK 并使用 opencl enbled 构建了 opencv,并为面部检测制作了一个基本的 c++ 可执行文件。在这种情况下,我的 exe 在以下情况下
的行为方式:当它在基于“ OpenCL 支持的 Intel 或 NVIDIA GPU ”的计算机上运行时?
湾。当它在没有 OpenCL支持的 GPU 的计算机上运行时?

2)我需要为不同的硬件制作不同的opencv-ocl exe吗?

4

1 回答 1

1

要回答您的问题:

  1. 无论运行在 AMD、Nvidia 还是 Intel GPU 上,您的 exe 都应该产生相同的输出,尽管运行时间可能会有很大差异。任何错误都应报告给 OpenCV 开发人员。一个例外:浮点运算在不同的硬件之间会产生略微不同的结果,但这些差异应该非常小,即接近浮点数/双精度数的精度极限。我不知道没有任何 OpenCL GPU 时会发生什么。

  2. 通过不同的硬件,我假设 AMD GPU 与 Nvidia GPU,而不是 Mac 与 x86。在这种情况下,您不需要提供多个可执行文件。这就是使用 OpenCL 的全部原因,它将各个供应商的本地接口(例如 Nvidia CUDA)隐藏在 OpenCL 标准后面。

于 2013-07-17T16:48:38.507 回答