Windows 如何修改.theanoc,以便nvcc在编译期间使用-m64标志?

Windows 如何修改.theanoc,以便nvcc在编译期间使用-m64标志?,windows,theano,Windows,Theano,我按照的步骤安装theano,但遇到了问题。其中之一是,默认情况下,在我的机器上,使用上的.theanoc设置nvcc尝试以32位模式编译theano,当我尝试在python shell上导入theano时,我看到了以下情况(请注意下面的-m32): 然后它会遇到问题,因为它找不到cublas.lib,而在我的机器上,32位libs存储在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\lib\Win32下的32位libs下确实不存在

我按照的步骤安装theano,但遇到了问题。其中之一是,默认情况下,在我的机器上,使用上的
.theanoc
设置
nvcc
尝试以32位模式编译theano,当我尝试在python shell上导入theano时,我看到了以下情况(请注意下面的
-m32
):

然后它会遇到问题,因为它找不到
cublas.lib
,而在我的机器上,32位libs存储在
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\lib\Win32
下的32位libs下确实不存在该文件(该文件是否存在于32位文件夹中的其他用户系统上?)。我将
cublas.lib
存储在
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\lib\x64
下,因此希望以64位模式编译。为此,我将NORC更改为:

[nvcc]
flags = -m64 --use-local-env  --cl-version=2013 
但这并没有产生预期的效果<代码>nvcc仍在尝试以32位模式编译:

['nvcc', '-shared', '-O3', '--use-local-env', '--cl-version=2013', '-Xlinker', '
/DEBUG', '-D HAVE_ROUND', '-m32', '-Xcompiler', '-m64,-DCUDA_NDARRAY_CUH=a3b91bc
有人知道如何修改
.theanoc
以使
nvcc
在编译过程中使用正确的语法吗

--machine{32 | 64}-m指定32位与64位体系结构

此选项允许的值:32、64


问题是您的PYTHON是32位PYTHON。我们不支持混合python、g++和nvcc位大小。这意味着它们都必须是32位或64位

确保所有这些都以64位方式安装

如果您想尝试支持这种混合情况,请检查theano/sandbox/cuda/nvcc_compiler.py,我们就在那里进行编译。在这里,我们添加了-m32标志:


如果您能做到这一点,我们欢迎您提交一份带有所需更改的序号的PR。

什么是PR?我今天面临一个新问题。我收到以下消息:nvcc致命:未为选项“cl版本”定义值“2013”。我不知道为什么我会得到这个,因为它以前是工作的,而不必显式地指定编译器\ u bindir。为了以防万一,我还执行了vcvarsall.bat。当它工作时,我遇到了这个错误:错误LNK2019:未解析的外部符号_cublasCreate_v2@4在函数“int\uu cdecl cublas\u init(void)”中引用了此函数,您知道如何修复此函数吗?为什么会这样?我正在链接cublas.libfyi我尝试了这个>>>导入平台>>>平台.architecture()('32bit','WindowsPE'),看起来我确实有32bit python。但这与编译64位代码有什么关系?例如,VS是一个32位应用程序,安装在程序文件(x86)下,但它将源代码编译为64位可执行文件。你不需要64位的编译器来产生64位的机器代码,明白了。nvcc致命错误:未为选项“cl version”定义值“2013”,因为在VS 2013不存在时,该选项正在调用旧版本的nvcc.exe(v3.2)。LNK2019:未解析的外部符号_cublasCreate_v2@4函数“int\uu cdecl cublas\u init(void)”中引用的事件发生了,因为我正在链接到一个旧版本的cublas.lib(来自v3.2工具包),但未定义此方法。
['nvcc', '-shared', '-O3', '--use-local-env', '--cl-version=2013', '-Xlinker', '
/DEBUG', '-D HAVE_ROUND', '-m32', '-Xcompiler', '-m64,-DCUDA_NDARRAY_CUH=a3b91bc