我想在我的Python环境中使用Theano和我的GPU几天。 在导入theano,我得到这样的错误:在导入Theano时加载编译器库时出错:致命错误C1083
d:\anaconda2\include\pyconfig.h(239) : fatal error C1083: Cannot open include file: 'basetsd.h': No such file or directory
我试图包括 “d:\ Anaconda2 \ MinGW的\ x86_64的-W64-的mingw32 \包括”(此文件夹包含 “pyconfig.h”)在PYTHONPATH,在PATH和.theanorc.txt中,使用相同的错误消息。
你有任何想法将anaconda/cuda/nvcc连接到Theano的编译器吗?
这里是我的配置:
- 操作系统:Windows 7
- GPU:的GeForce GTX 950
- cl.exe时:d:\程序文件(x86)\微软的Visual Studio 11.0 \ VC \斌
- nvcc.exe:C:\ Program Files文件\ NVIDIA GPU计算工具包\ CUDA \ 8.0 \ BIN
- 的Python IDE:从Spyder的蟒蛇2,在Python 2
- Theano 0.8.2
我可以用CPU导入theano,但我想用GPU进行计算。
在输入“import theano”(with device = gpu)后,我可以看到控制台窗口在显示错误之前启动“nvcc.exe”。
我测试CUDA与Visual Studio 2012和它的工作,例如 “双边滤波器” 没有错误在Visual Studio中的工作原理:
Found 1 CUDA Capable device(s) supporting CUDA
Device 0: "GeForce GTX 950"
CUDA Runtime Version: 8.0
CUDA Compute Capability: 5.2
...
Running Standard Demonstration with GLUT loop...
这里是我的theanorc.txt文件(出现相同错误或不[NVCC]和[CUDA])
[global] device = gpu floatX = float32 [cuda] root = -LC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 [nvcc] flags = -LD:\Anaconda\libs fastmath = True compiler-bindir = -LD:\Anaconda2\MinGW\x86_64-w64-mingw32\include
这是我的PATH
D:\Anaconda2\MinGW\x86_64-w64-mingw32\include C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin D:\Anaconda2 D:\Anaconda2\Scripts D:\Anaconda2\Library\bin C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit\ C:\Program Files\Microsoft SQL Server\110\Tools\Binn\
这是我的PYTHONPATH
D:\Anaconda2\MinGW\x86_64-w64-mingw32\include C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64 C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
在这里,在Spyder的键入 “进口theano”(与设备在theanorc.txt = GPU)后是完整的错误消息:
1 #define _CUDA_NDARRAY_C 2 3 #include <Python.h> 4 #include <structmember.h> 5 #include "theano_mod_helper.h" 6 7 #include <numpy/arrayobject.h> 8 #include <iostream> ... 5358 /* 5359 Local Variables: 5360 mode:c++ 5361 c-basic-offset:4 5362 c-file-style:"stroustrup" 5363 indent-tabs-mode:nil 5364 fill-column:79 5365 End: 5366 */ 5367 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=79 : 5368 =============================== c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(849) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(1787) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(2637) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(3492) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(4431) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(5345) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(6252) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7142) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\math_functions.h(7956) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(774) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_functions.h(1618) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\device_double_functions.h : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss c:\program files\nvidia gpu computing toolkit\cuda\v8.0\include\sm_20_intrinsics.h(943) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss d:\anaconda2\include\pyconfig.h(239) : fatal error C1083: Cannot open include file: 'basetsd.h': No such file or directory ERROR (theano.sandbox.cuda): Failed to compile cuda_ndarray.cu: ('nvcc return status', 2, 'for cmd', 'nvcc -shared -O3 -LD:\\Anaconda\\libs -use_fast_math -Xlinker /DEBUG -D HAVE_ROUND -m64 -Xcompiler -DCUDA_NDARRAY_CUH=c72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD -ID:\\Anaconda2\\lib\\site-packages\\theano\\sandbox\\cuda -ID:\\Anaconda2\\lib\\site-packages\\numpy\\core\\include -ID:\\Anaconda2\\include -ID:\\Anaconda2\\lib\\site-packages\\theano\\gof -o C:\\Users\\Administrator\\AppData\\Local\\Theano\\compiledir_Windows-7-6.1.7601-SP1-Intel64_Family_6_Model_60_Stepping_3_GenuineIntel-2.7.13-64\\cuda_ndarray\\cuda_ndarray.pyd mod.cu -LD:\\Anaconda2\\libs -LD:\\Anaconda2 -lcublas -lpython27 -lcudart') WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu is not available (error: cuda unavailable) nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning). mod.cu ['nvcc', '-shared', '-O3', '-LD:\\Anaconda\\libs', '-use_fast_math', '-Xlinker', '/DEBUG', '-D HAVE_ROUND', '-m64', '-Xcompiler', '-DCUDA_NDARRAY_CUH=c72d035fdf91890f3b36710688069b2e,-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION,/Zi,/MD', '-ID:\\Anaconda2\\lib\\site-packages\\theano\\sandbox\\cuda', '-ID:\\Anaconda2\\lib\\site-packages\\numpy\\core\\include', '-ID:\\Anaconda2\\include', '-ID:\\Anaconda2\\lib\\site-packages\\theano\\gof', '-o', 'C:\\Users\\Administrator\\AppData\\Local\\Theano\\compiledir_Windows-7-6.1.7601-SP1-Intel64_Family_6_Model_60_Stepping_3_GenuineIntel-2.7.13-64\\cuda_ndarray\\cuda_ndarray.pyd', 'mod.cu', '-LD:\\Anaconda2\\libs', '-LD:\\Anaconda2', '-lcublas', '-lpython27', '-lcudart']