Passing cuda kernel as template argument to compute function
Renamed compute to cuda_compute, added cpu_compute