Choosing Optimal Workgroup Size

Workgroup is a concept exclusive to OpenCL™ and should be exploited. It is recommended to define an explicit workgroup size when declaring a kernel. This gives the compiler more flexibility to optimize the size of the kernel. In addition define the workgroup size as large as the application allows, which will minimize the overhead associated with kernel startup.

Similarly, to the workgroup size, the vec_type_hint attribute may be applicable to guide the tool to merge work items to generate larger blocks and reduce overhead.
Note: Do not apply vec_type_hint in the case of kernels with work_group_size of (1, 1, 1).