title: How to know if CAFFE code is running using GPU or CUDA code?
body: <p>I known that almost layer in CAFFE can run in CPU/GPU. In case of GPU, it has some mode, called engine. If <code>engine=CAFFE</code>, it will run with GPU and <code>engine=CUDNN</code>, it will run based on CUDA code. The default is DEFAULT mode</p>
  
  <p>In my Makefile.config, I turn on CUDNN mode when build caffe</p>
  
  <pre><code># cuDNN acceleration switch (uncomment to build with cuDNN).
  USE_CUDNN := 1
  </code></pre>
  
  <p>In my prototxt, I have a layer, for example, Deconvolution layer</p>
  
  <pre><code>layer {
    name: "DeconvolutionLayer"
    type: "Deconvolution"
    bottom: "conv1"
    top: "DeconvolutionLayer"
    param {
      lr_mult: 1
      decay_mult: 1
    }
    convolution_param {
      num_output: 128
      bias_term: false
      pad: 0
      kernel_size: 2
      stride: 2
      weight_filler {
        type: "msra"
      }    
    }
  }
  </code></pre>
  
  <p>Note that, I did not set any value for <code>engine</code> flag. When I run, which mode will be use, GPU or CUDNN? The training script is</p>
  
  <pre><code>caffe/build/tools/caffe train --solver=solver.prototxt -gpu 0
  </code></pre>