Working on GPU-enabled version