title: The behavior of __CUDA_ARCH__ macro
body: <p>In the host code, it seems that the <code>__CUDA_ARCH__</code> macro wont generate different code path, instead, it will generate code for exact the code path for the current device.</p>
  
  <p>However, if <code>__CUDA_ARCH__</code> were within device code,  it will generate different code path for different devices specified in compiliation options (/arch).</p>
  
  <p>Can anyone confirm this is correct?</p>