#include #include #include #include #include #include #include #include using namespace std; int generator() { return rand() % 5; } int main(void) { // generate random data serially thrust::host_vector h_vec(1000000); std::generate(h_vec.begin(), h_vec.end(), generator); // transfer to device and compute sum thrust::device_vector d_vec = h_vec; int sum = thrust::reduce(d_vec.begin(), d_vec.end(), 0, thrust::plus()); cout << "sum = " << sum << endl; return 0; }