push_back 使用推力库
Posted
技术标签:
【中文标题】push_back 使用推力库【英文标题】:push_back using Thrust library 【发布时间】:2012-09-05 08:18:04 【问题描述】:是否可以将 push_back 与 Thrust 库一起使用?那么向量的向量呢?我想在 GPU 中使用 CPu 中的内容:
vector< vector<int> > MyVector( 100 );
...
MyVector[i].push_back(j);
有没有办法使用它,例如:
thrust::device_vector<thrust::device_vector<int>> d_vec(4);
那么创建一个 device_vectors 数组呢?有可能吗?
【问题讨论】:
【参考方案1】:-
是的,
thrust::device_vector
有一个 push_back
方法,就像 std::vector
一样。
不,不可能有一个包含device_vectors
的device_vector
。如果您在推力中需要这种功能,我建议您查看thrust::zip_iterator
,它可以提供“结构数组”,例如访问一系列不同的向量或迭代器。
【讨论】:
我想要的是以这种方式访问device_vector dv
:dv[i][j
]
@Manolete:我不相信这是可能的。
但是你可以做 dv[i*width + j].以上是关于push_back 使用推力库的主要内容,如果未能解决你的问题,请参考以下文章
推力::设备向量使用推力::替换或推力::转换与自定义函子/谓词