CUDA错误:MapsToCores未定义SM 3.5未定义

CUDA错误:MapsToCores未定义SM 3.5未定义,cuda,makefile,cuda-gdb,Cuda,Makefile,Cuda Gdb,我无法运行包装CUDA代码的python脚本。它告诉我更新我的CUDA SDK,但是我认为问题是CUDA C文件被读取而不是同名的CUDA C++文件。有人知道怎么解决这个问题吗 错误消息是: MapSMtoCores undefined SM 3.5 is undefined (please update to the latest SDK)! 1.1...src/cudaconv2/filter_acts.cu(1179) : getLastCudaError() CUDA error :

我无法运行包装CUDA代码的python脚本。它告诉我更新我的CUDA SDK,但是我认为问题是CUDA C文件被读取而不是同名的CUDA C++文件。有人知道怎么解决这个问题吗

错误消息是:

MapSMtoCores undefined SM 3.5 is undefined (please update to the latest SDK)!
1.1...src/cudaconv2/filter_acts.cu(1179) : getLastCudaError() CUDA error : 
filterActs: kernel execution failed : (9) invalid configuration argument.
我很确定我用的是cuda-5。要检查,根据,我需要

$ cd $(SDK)
$ make
$ ./C/bin/linux/release/deviceQuery
我没有根访问权限,所以我必须

$ mkdir ~/CUDA_SDK
$ cp -r /usr/local/cuda/gpu_sdk ~/CUDA_SDK
$ cd ~/CUDA_SDK
$ make
然而,这导致:

  • 许多警告的形式
。/../common/inc/helper\u cuda.h:246:12:警告:命令行选项“-Wimplicit”对C/ObjC有效,但对C++

。/../common/inc/helper\u cuda.h:246:12:警告:枚举值“FOO”未在开关中处理

  • 表格中有许多错误
。/../common/inc/helper\u cuda.h:252:14:错误:未在此范围内声明“FOO”

我在helper_cuda.h上查看了
find-name
。它有两个版本:
/C/common/inc/helper\u cuda.h
,包含错误中提到的所有变量的cuda C文件头, <代码> ./cDualBrase/Ung/Inc/HelpRyCUDA。h < /C> > CUDA C++文件的头,其中没有包含错误中提到的变量。

我还查看了
grep“未定义(请更新到最新的SDK)!”-r~/CUDA_SDK
哪个文件可能会输出导致这一切的错误(在顶部提到),引人注目的是,helper_CUDA.h是仅有的两个这样做的文件之一


<如果我能得到C++ HelpReCuU.h来代替C HelpPurcUda. h,我想我赢了。我应该使用环境变量吗?

有两个不同的问题。第一个问题是成功构建的CUDA应用程序在运行时失败,第二个问题是构建CUDA应用程序由于构建环境无效而失败

信息,

MapsToCores undefined SM 3.5未定义(请更新至最新SDK)

当使用CUDA示例框架(helper_CUDA.h)的应用程序(通常是CUDA示例之一)在计算能力为3.5的设备上运行,并且应用程序是使用尚未更新以涵盖该计算能力的示例框架版本构建的时,输出

如果安装了CUDA 5,则该应用程序可能是使用早期版本的SDK构建的

第二条信息

..src/cudaconv2/filter_acts.cu(1179):getLastCudaError()CUDA错误: filterActs:内核执行失败:(9)配置参数无效

很可能是由于应用程序没有检测到第一个错误,然后继续尝试启动内核,并使用打印第一个错误的函数返回的无效值

其他错误是生成错误。这些问题是由于将CUDA SDK复制到您的主文件夹,并试图在不更新CUDA环境变量的情况下从该文件夹进行构建而导致的

在本地以外构建CUDA示例可能需要大量工作,并且不必让“filter acts”应用程序正常工作。要使“filter acts”在具有计算能力3.5设备的机器上工作,您需要使用CUDA 5.0或更高版本重新构建它,或者将其修改为不再依赖CUDA samples框架(这会更好)


因此,您应该首先确定您是否有一个实际工作的CUDA5构建环境。如果您没有,那么具有root访问权限的人应该修复它。有了一个工作的构建环境,您应该能够重新构建应用程序。

cuda代码用python脚本包装,取自和。另外,如果您想要整个Makefile,请告诉我您的机器中是否有计算能力为3.5的设备?SDK可能已设置为仅支持可用的。您的
nvcc
版本是什么?我猜它很旧,你需要将它更新到5.0或更高版本。嗨,我已经更新了我的问题,我认为这不再是更新SDK的问题了!