Eliminate a couple of registers from cuda_task
Memoize the device_properties() function in host code.
Avoid calling device_properties() repeatedly in cuda_launcher.