当程序在GPGPU上运行时,如果使用OpenMP与OpenCL实现,它的执行会有什么不同?
OpenMP是否通过OpenCL使用GPGPU? 如果没有,我可以直接使用什么是常见的GPGPU API(没有任何OpenMP / OpenCL构建在它上面)?
P.S。在Linux上,OpenMP仅使用 pthread 来管理线程。除了OpenCL和CUDA之外,我找不到GPGPU的任何其他API,所以很明显(但非常痛苦)承认OpenMP,当谈到GPGPU时,使用OpenCL(如果GPGPU是NVIDIA,那么就是CUDA,OpenMP就是那么聪明)。