Что ещё необходимо узнать про OpenCL C перед тем, как на нём писать

Habrahabr 1
Как было написано

float4 val = (0, 0, 0, 0);

Что хотел написать автор

float4 val = (float4)(0, 0, 0, 0);

Как нужно было написать

float4 val = 0;

Если Вы сталкивались с OpenCL или планируете столкнуться и не видите разницы между первым и вторым вариантом, а третий вызывает у Вас сомнения — «А скомпилируется ли вообще?» — добро пожаловать под кат, там много нюансов языка и совсем ничего про API и оптимизацию производительности. Читать дальше →