Heterogeneous Computing with Opencl by