OpenCL - язык на основе Си.Существуют платформы OpenCL, которые работают на графических процессорах (от NVidia и AMD ) и процессорах (от Intel и AMD ).
Хотя можно выполнять один и тот же код OpenCL как на графических, так и на процессорных процессорах, его действительно необходимо оптимизировать для целевого устройства.Разный код должен быть написан для разных графических процессоров и процессоров, чтобы получить лучшую производительность.Тем не менее, платформа OpenCL ЦП может функционировать как низкоэффективный запасной вариант даже для кода, оптимизированного для GPU.
Если вы довольны написанием условных директив, которые выполняются в зависимости от целевого устройства (ЦП или ГП), то это может повысить производительностькода OpenCL на нескольких устройствах.