add CUDA  code