Download examples/sum.cu from camenduru/thrust: direct link, hf CLI and curl.
- Browser
- Download file 883 Bytes
-
https://huggingface.co/camenduru/thrust/resolve/main/examples/sum.cu
- Command line
-
hf download hf://camenduru/thrust/examples/sum.cu
-
curl -L -o sum.cu https://huggingface.co/camenduru/thrust/resolve/main/examples/sum.cu
883 Bytes
| int my_rand(void) | |
| { | |
| static thrust::default_random_engine rng; | |
| static thrust::uniform_int_distribution<int> dist(0, 9999); | |
| return dist(rng); | |
| } | |
| int main(void) | |
| { | |
| // generate random data on the host | |
| thrust::host_vector<int> h_vec(100); | |
| thrust::generate(h_vec.begin(), h_vec.end(), my_rand); | |
| // transfer to device and compute sum | |
| thrust::device_vector<int> d_vec = h_vec; | |
| // initial value of the reduction | |
| int init = 0; | |
| // binary operation used to reduce values | |
| thrust::plus<int> binary_op; | |
| // compute sum on the device | |
| int sum = thrust::reduce(d_vec.begin(), d_vec.end(), init, binary_op); | |
| // print the sum | |
| std::cout << "sum is " << sum << std::endl; | |
| return 0; | |
| } | |