Custom kernels
Interoperability with ViennaCL and Boost.compute