0

我已经使用 Thrust 编写了一个代码。我在下面粘贴代码及其输出。奇怪的是,当执行过程中到达 device_vector 行时,屏幕只是挂起并且没有更多的输出。它在早上工作。请帮我。

#include <thrust/host_vector.h>
#include <thrust/device_vector.h>

#include <iostream>

int main(void)
{
// H has storage for 4 integers
thrust::host_vector<int> H(4);

// initialize individual elements
H[0] = 14;
H[1] = 20;
H[2] = 38;
H[3] = 46;

// H.size() returns the size of vector H
std::cout << "H has size " << H.size() << std::endl;

// print contents of H
for(size_t i = 0; i < H.size(); i++)
    std::cout << "H[" << i << "] = " << H[i] << std::endl;

// resize H
H.resize(2);

std::cout << "H now has size " << H.size() << std::endl;

// Copy host_vector H to device_vector D
thrust::device_vector<int> D = H;

// elements of D can be modified
D[0] = 99;
D[1] = 88;

// print contents of D
for(size_t i = 0; i < D.size(); i++)
    std::cout << "D[" << i << "] = " << D[i] << std::endl;

// H and D are automatically deleted when the function returns
return 0;
}

输出为: H 大小为 4 H[0] = 14 H[1] = 20 H[2] = 38 H[3] = 46 H 现在大小为 2

*之后什么都没有发生

4

1 回答 1

1

运行设备查询。我相信如果代码在早上工作,问题是由于显卡。

于 2012-12-21T10:37:04.207 回答