Allow CUDA host device functions with two code paths using CUDA_ARCH to differentiate between code path being compiled.
For example,
__host__ __device__ void host_device_function(void) { #ifdef __CUDA_ARCH__ device_only_function(); #else host_only_function(); #endif }