Advertisement
Guest User

Untitled

a guest
Sep 26th, 2013
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. eosadmins-MacBook-Pro:st7 smasuti$ cat simple1.cu
  2. #include <stdio.h>
  3.  
  4. __global__ void kernelCode(float *result)
  5. {
  6. int index = threadIdx.x+blockIdx.x*blockDim.x;
  7. if(index<5000)
  8. {
  9. atomicAdd(result,1.0f);
  10. }
  11. }
  12.  
  13. int main ()
  14. {
  15. float *d;
  16. dim3 dimGrid (5, 1,1) ;
  17. dim3 dimBlock (1000,1,1) ;
  18. float abc ;
  19. cudaError_t cuError = cudaSuccess ;
  20.  
  21. cuError = cudaMalloc ((void **) &d, sizeof(float)) ;
  22. if (cuError != cudaSuccess)
  23. {
  24. printf ("Error\n") ;
  25. }
  26. cudaMemset (d,0,sizeof(float)) ;
  27. if (cuError != cudaSuccess)
  28. {
  29. printf ("Error\n") ;
  30. }
  31.  
  32. kernelCode <<<dimGrid, dimBlock>>> (d) ;
  33.  
  34. if (cudaDeviceSynchronize() != cudaSuccess)
  35. {
  36. printf ("Error\n") ;
  37. }
  38.  
  39. cudaMemcpy (&abc, d, sizeof(float), cudaMemcpyDeviceToHost) ;
  40.  
  41. printf ("%e\n", abc) ;
  42. return 0 ;
  43.  
  44. }
  45. eosadmins-MacBook-Pro:st7 smasuti$ ./simple1
  46. 5.000000e+03
  47. eosadmins-MacBook-Pro:st7 smasuti$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement