title: Reducing Number of Registers Used in CUDA Kernel
body: <p>I have a kernel which uses 17 registers, reducing it to 16 would bring me 100% occupancy.  My question is: are there methods that can be used to reduce the number or registers used, excluding completely rewriting my algorithms in a different manner. I have always kind of assumed the compiler is a lot smarter than I am, so for example I often use extra variables for clarity's sake alone.  Am I wrong in this thinking?</p>
  
  <p>Please note: I do know about the --max_registers (or whatever the syntax is) flag, but the use of local memory would be more detrimental than a 25% lower occupancy (I should test this)</p>