如何有效插入/合并到thrust :: device_vector?

时间:2017-05-15 17:07:16

标签: c++ cuda thrust

我想将几个device_vectors合并为一个,如下所示:

thrust::device_vector<int>         allinput = input0;
allinput.insert(allinput.end(),input1.begin(),input1.end());
allinput.insert(allinput.end(),input2.begin(),input2.end());
allinput.insert(allinput.end(),input3.begin(),input3.end());

但显然我想有效地做到这一点。我正在使用密钥device_vectors和值device_vectors,我想为两者执行此操作。

实现这一目标的最有效方法是什么?

我遇到的另一个问题是我只知道有多少关键&amp;值device_vectors我将一直运行。有没有办法制作device_vector<device_vector>或以某种方式通过指针访问几个向量?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以在插入前使用<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.4.3</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.4.3</version> </dependency> 以加快后续插入速度:

reserve (size_type n)