GPU and CUDA introduction