title: Does tensorflow automatically detect GPU or do I have to specify it manually?
body: <p>I have a code written in tensorflow that I run on CPUs and it runs fine. 
  I am transferring to a new machine which has GPUs and I run the code on the new machine but the training speed did not improve as expected (takes almost the same time). </p>
  
  <p>I understood that Tensorflow automatically detects GPUs and run the operations on them (<a href="https://www.quora.com/How-do-I-automatically-put-all-my-computation-in-a-GPU-in-TensorFlow" rel="nofollow noreferrer">https://www.quora.com/How-do-I-automatically-put-all-my-computation-in-a-GPU-in-TensorFlow</a>) &amp; (<a href="https://www.tensorflow.org/tutorials/using_gpu" rel="nofollow noreferrer">https://www.tensorflow.org/tutorials/using_gpu</a>). </p>
  
  <p>Do I have to change the code to make it manually runs the operations on GPUs (for now I have a single GPU)? and what would be gained by doing that manually? </p>
  
  <p>Thanks </p>