我现在开始学习openCL。我现在正在做教程,但我无法真正理解主机的想法,有人可以解释吗?谢谢
OpenCL 是一个旨在支持大规模并行处理的系统,例如可以由现代图形芯片 (GPU) 执行的处理。在 OpenCL 范例中,“主机程序”是执行基于 GPU 的应用程序的配置的外部控制逻辑。该主机程序通常在通用 CPU 上运行(例如大多数台式 PC 中的 x86 兼容主处理器)。 OpenCL 程序还包含一个或多个专为在 GPU 上并行执行而设计的“内核”函数。
一旦配置了所有缓冲区和内核,主机程序将调用类似
EnqueueNDRangeKernel()
这将开始在 GPU 上执行内核。
根据您的目标平台,情况可能会有所不同。例如,OpenCL 并不特别要求 GPU 的存在。相反,可以在运行主机程序的同一 CPU 上将内核作为多个线程执行。
OpenCL 命名法总结:
-
Host- 用于配置内核执行的主CPU
-
Device- 包含将执行内核的处理单元的组件(GPU)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)