THEANO_FLAGS=device=cpu

Excellent! That helped and I can now run the code (as well as my own ...).
>
> Quick question: How would I convince theano to NOT use the GPU but rather 
> stick to the CPU (that is, to not use cuda at all)? Or would I run into the 
> same issue again then?
>
> Many thanks for your help! Much appreciated.
>
> Thomas
>
> On Thursday, 23 February 2017 17:09:35 UTC-5, Ramana Subramanyam wrote:
>>
>> Hi, 
>> I tried training your code and it works fine on my system. Try upgrading 
>> to CUDA 8 and run the code. 
>>
>> Ramana
>>
>> On Thursday, February 23, 2017 at 11:08:23 PM UTC+1, Ramana Subramanyam 
>> wrote:
>>>
>>>
>>> Hi,
>>>
>>> I use theano on 10.12, Sierra as well. What version of nvcc do you use? 
>>> XCode 7.3 supports only CUDA 8. You don't need to change versions of XCode 
>>> or CLT. I use the same versions of these softwares as you. 
>>>
>>> Ramana
>>>
>>> Folks --
>>>>
>>>> I am stuck in version hell I suppose and need some help for running 
>>>> theano on my Mac.
>>>>
>>>> Here is the config:
>>>> Mac OS: 10.12.3 (16D32)
>>>>
>>>> python 2.7 (I use anaconda but I have tried the /usr-version that comes 
>>>> with the OS as well -- same result)
>>>>
>>>> theano: Theano (0.9.0rc1)
>>>> lasagne: Lasagne (0.2.dev1)
>>>> numpy: numpy (1.12.0)
>>>>
>>>> Xcode: Version 7.3 (7D175)
>>>> clang: 
>>>> Apple LLVM version 7.3.0 (clang-703.0.29)
>>>> Target: x86_64-apple-darwin16.4.0
>>>> Thread model: posix
>>>>
>>>> Unfortunately, I cannot downgrade XCode (clang) because I need it for 
>>>> other projects.
>>>>
>>>> So, here is what happens. I am working on LSTM models and have narrowed 
>>>> my version problem down as follows: Using the code provided here: 
>>>> http://colinraffel.com/talks/hammer2015recurrent.pdf (python file 
>>>> attached) calls to theano.function (line 154 in the attached) result in 
>>>> the 
>>>> following error message (excerpt):
>>>>
>>>> ======/ SNIP /============
>>>> Problem occurred during compilation with the command line below:
>>>> /usr/bin/clang++ -dynamiclib -g -O3 -fno-math-errno -Wno-unused-label 
>>>> -Wno-unused-variable -Wno-write-strings -march=haswell 
>>>> -DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION -m64 -fPIC -undefined 
>>>> dynamic_lookup 
>>>> -I/Users/thomas/anaconda/lib/python2.7/site-packages/numpy/core/include 
>>>> -I/Users/thomas/anaconda/include/python2.7 
>>>> -I/Users/thomas/anaconda/lib/python2.7/site-packages/theano/gof 
>>>> -L/Users/thomas/anaconda/lib -fvisibility=hidden -o 
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/39a151e745f8754653c9e8ca5ea9cf75.so
>>>>  
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/mod.cpp
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/mod.cpp:894:21:
>>>>  
>>>> warning: comparison of array 'outputs' equal to a null pointer is always 
>>>> false [-Wtautological-pointer-compare]
>>>>                 if (outputs == NULL) {
>>>>                     ^~~~~~~    ~~~~
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/mod.cpp:919:54:
>>>>  
>>>> error: arithmetic on a pointer to void
>>>>                                     PyArray_DATA(V3) + data_offset,
>>>>                                     ~~~~~~~~~~~~~~~~ ^
>>>> 1 warning and 1 error generated.
>>>>
>>>> Traceback (most recent call last):
>>>>   File "lstm_baseline.py", line 154, in <module>
>>>>     train = theano.function([l_in.input_var, target_values, 
>>>> l_mask.input_var], cost, updates=updates)
>>>>   File 
>>>> "/Users/thomas/anaconda/lib/python2.7/site-packages/theano/compile/function.py",
>>>>  
>>>> line 326, in function
>>>>     output_keys=output_keys)
>>>>   File 
>>>> "/Users/thomas/anaconda/lib/python2.7/site-packages/theano/compile/pfunc.py",
>>>>  
>>>> line 486, in pfunc
>>>>     output_keys=output_keys)
>>>> ======/ SNAP /============
>>>>
>>>> later on in theoutput:
>>>> ======/ SNIP /============
>>>> Exception: ('The following error happened while compiling the node', 
>>>> Split{4}(Assert{msg='Theano Assert failed!'}.0, TensorConstant{1}, 
>>>> MakeVector{dtype='int64'}.0), '\n', "Compilation failed (return status=1): 
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/mod.cpp:894:21:
>>>>  
>>>> warning: comparison of array 'outputs' equal to a null pointer is always 
>>>> false [-Wtautological-pointer-compare].                 if (outputs == 
>>>> NULL) {.                     ^~~~~~~    ~~~~. 
>>>> /Users/thomas/.theano/compiledir_Darwin-16.4.0-x86_64-i386-64bit-i386-2.7.13-64/tmp5GtYpU/mod.cpp:919:54:
>>>>  
>>>> error: arithmetic on a pointer to void.                                    
>>>>  
>>>> PyArray_DATA(V3) + data_offset,.                                     
>>>> ~~~~~~~~~~~~~~~~ ^. 1 warning and 1 error generated.. ", '[*1 -> 
>>>> Split{4}(<TensorType(float64, matrix)>, TensorConstant{1}, 
>>>> <TensorType(int64, vector)>), *1::1, *1::2, *1::3]')
>>>> ======/ SNAP /============
>>>>
>>>>
>>>> Now, I know that this code works because we have it up and running on 
>>>> another Mac with the same configuration APART from the clang version, 
>>>> which 
>>>> there is:
>>>> Apple LLVM version 7.0.2 (clang-700.1.81)
>>>> Target: x86_64-apple-darwin14.5.0
>>>> Thread model: posix
>>>>
>>>> The code also runs fine on a recent Ubuntu box.
>>>>
>>>> ==> So, it looks like the newer clang version is to blame for being 
>>>> more pedantic (?) with comparisons to NULL pointers (in the generated C 
>>>> code). Now, this behaviour is a little tricky to debug (to say the least). 
>>>> I have quadruple checked the Python code and it looks fine. The fact that 
>>>> it is running on two other of out machines and that the original author of 
>>>> it (Colin Raffel -- all kudos to him for the tutorial code) is using it in 
>>>> his tutorial tells me that my suspicion is not entirely wrong.
>>>>
>>>> I tried installing an older version of the command line tools for XCode 
>>>> (essentially the c-compiler) on my box to run it in parallel to the 
>>>> current 
>>>> version (which I need for other projects) but that did not work out. 
>>>> According to the apple developer forum I would need to install the 
>>>> complete 
>>>> (!) version of an older XCode package, which is not really an option.
>>>>
>>>>
>>>> So, does anyone have a clue / experience / advise on this?
>>>>
>>>> Many thanks!
>>>> Thomas
>>>>
>>>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"theano-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to theano-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to