Интересно. Оказывается между opencl и c++ структурами нет валидации. Пытался понять что не так - а билд лог пустой. Ошибка оказалась в том, что размеры разные для структуры на CPU и на GPU. Хотя слегка фрустрация что именно не так, потому что программа не скомпилировалась.