首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >thrust::device_vector错误

thrust::device_vector错误
EN

Stack Overflow用户
提问于 2012-03-15 06:49:32
回答 1查看 1.4K关注 0票数 2

我是个新手。我正在尝试从thrust::host_vector复制到thrust::device_vector,两者的类型都是Sequence,这是我已经实现的一个类。

然而,我得到了一个错误“无效的设备功能”。我在GeForce GT 540上使用CUDA4.0 VS2010。

代码语言:javascript
复制
thrust::host_vector <Sequence> Ind_Tabel_V; 
void Ind_Table_Filling() 
{ 
    //some Code 
    Sequence s; 
    // some code 
    Ind_Tabel_V.push_back(s); 
    try 
    { 
        thrust::device_vector<Sequence> d_vec=Ind_Tabel_V; 
    } 
    catch (thrust::system_error &e) 
    { 
        std::cerr << "Error accessing vector element: " << e.what() << std::endl; 
    } 
} 

有谁能帮帮忙吗?

EN

回答 1

Stack Overflow用户

发布于 2012-03-15 21:23:19

该错误消息通常意味着运行时无法找到与您的GPU架构匹配的二进制文件,即您的编译中没有包含正确的GPU SM版本。由于您使用的是VS2010,GPU架构通常是通过构建自定义来设置的。在CUDA C/C++,Device下的项目属性中,您应该看到"Code Generation“选项。我不确定你的图形处理器是哪一代的,但你可以尝试使用"compute_20,sm_20;compute_20,sm_21“来构建这两种费米架构。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9711495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档