How can I run this program with cudnn?
yiran-THU opened this issue · 1 comments
yiran-THU commented
Hi!
Thanks for releasing the code!
When I run the test program,it reports the following bug.
Time taken to read and prepare the image is 135.346 ms
INFO: Testing double scale
resize to test is [ 1.95833333 1.70482819 1.48413914 1.29201816 1.12476714 0.97916667
0.85241409 0.74206957 0.64600908 0.56238357 0.48958333 0.42620705
0.37103478 0.32300454 0.28119178 0.24479167 0.21310352 0.18551739
0.16150227 0.14059589 0.12239583]
scales to test is [ 1. 1.14869835 1.31950791 1.51571657 1.74110113 2.
2.29739671 2.63901582 3.03143313 3.48220225 4. 4.59479342
5.27803164 6.06286627 6.96440451 8. 9.18958684
10.55606329 12.12573253 13.92880901 16. ]
Time taken to resize image is 94.285ms
/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/__init__.py:541: UserWarning: Theano flag device=gpu* (old gpu back-end) only support floatX=float32. You have floatX=float64. Use the new gpu back-end with device=cuda* for that value of floatX.
warnings.warn(msg)
Using gpu device 0: GeForce GTX 1060 (CNMeM is disabled, cuDNN 5105)
Traceback (most recent call last):
File "compute_detector.py", line 215, in <module>
image, verbose=False)
File "/home/yiran/LIFT/python-code/Utils/solvers.py", line 148, in TestImage
myNet = CreateNetwork4Image(pathconf, param, image, verbose=verbose)
File "/home/yiran/LIFT/python-code/Utils/solvers.py", line 138, in CreateNetwork4Image
myNet.compileSpecific(verbose=verbose) # Compile specific to runType
File "/home/yiran/LIFT/python-code/Utils/networks/eccv_base.py", line 602, in compileSpecific
deterministic=True)
File "/usr/local/lib/python2.7/dist-packages/lasagne/layers/helper.py", line 191, in get_output
all_outputs[layer] = layer.get_output_for(layer_inputs, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/lasagne/layers/conv.py", line 330, in get_output_for
conved = self.convolve(input, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/lasagne/layers/dnn.py", line 505, in convolve
conv_mode=conv_mode
File "/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/dnn.py", line 1265, in dnn_conv3d
img = gpu_contiguous(img)
File "/usr/local/lib/python2.7/dist-packages/theano/gof/op.py", line 604, in __call__
node = self.make_node(*inputs, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/basic_ops.py", line 3910, in make_node
input = as_cuda_ndarray_variable(input)
File "/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/basic_ops.py", line 46, in as_cuda_ndarray_variable
return gpu_from_host(tensor_x)
File "/usr/local/lib/python2.7/dist-packages/theano/gof/op.py", line 604, in __call__
node = self.make_node(*inputs, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/basic_ops.py", line 132, in make_node
dtype=x.dtype)()])
File "/usr/local/lib/python2.7/dist-packages/theano/sandbox/cuda/type.py", line 95, in __init__
(self.__class__.__name__, dtype, name))
TypeError: CudaNdarrayType only supports dtype float32 for now. Tried using dtype float64 for variable None
Parameters
My os is ubuntu 14.04,my cuda is 8.0
I hope I can get help here!
Thanks
yiran-THU commented
sorry,it is my fault.
I forgot to configure Theano to use a GPU. Put this into your ~/.theanorc:
[global]
floatX = float32
device = gpu0
[nvcc]
fastmath = True