Added CPU kernels, timer and choise of PU