Advertisement
Guest User

Untitled

a guest
Nov 20th, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1.  
  2. #include "cuda_runtime.h"
  3. #include "device_launch_parameters.h"
  4. #include <stdlib.h>
  5. #include <stdio.h>
  6. #include <string.h>
  7.  
  8. __global__ void suma(int* a, int* b, int* c)
  9. {
  10.  
  11. int idThread = blockIdx.x;
  12. c[idThread] = a[idThread] + b[idThread];
  13.  
  14. }
  15.  
  16. __host__ __device__ void printHolaMundo()
  17. {
  18.  
  19.  
  20. printf("Hola mundo\n");
  21. }
  22.  
  23. __global__ void holaMundo()
  24. {
  25. printHolaMundo();
  26.  
  27. }
  28.  
  29. int main(int argc, char** argv)
  30. {
  31.  
  32. int i;
  33. int *a, *b, *c;
  34. int *d_a, *d_b, *d_c;
  35.  
  36. int vSize = 10; //vector Size
  37.  
  38. a = (int*)malloc(sizeof(int) * vSize);
  39. b = (int*)malloc(sizeof(int) * vSize);
  40. c = (int*)malloc(sizeof(int) * vSize);
  41.  
  42.  
  43. cudaMalloc((void **)&d_a, sizeof(int) * vSize);
  44. cudaMalloc((void **)&d_b, sizeof(int) * vSize);
  45. cudaMalloc((void **)&d_c, sizeof(int) * vSize);
  46.  
  47. //inicializacion
  48.  
  49. for ( i = 0; i < vSize; i++)
  50. {
  51. a[i] = b[i] = i;
  52. }
  53.  
  54. cudaMemcpy(d_a, a, vSize * sizeof(int), cudaMemcpyHostToDevice);
  55. cudaMemcpy(d_b, b, vSize * sizeof(int), cudaMemcpyHostToDevice);
  56. cudaMemset(d, 0xFF, vSize * sizeof(int));
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69. h_c = (int*)malloc(sizeof(int));
  70. a = 10;
  71. b = 10;
  72. *h_c = 10;
  73.  
  74. //cudaMemcpy( d_c, h_c, sizeof(int), cudaMemcpyHostToDevice);
  75.  
  76. suma << <1, 1 >> > (a, b, d_c);
  77.  
  78. cudaMemcpy(h_c, d_c, sizeof(int), cudaMemcpyDeviceToHost);
  79. printf("resultado: %d\n", *h_c);
  80.  
  81.  
  82. cudaFree(d_c);
  83. free(h_c);
  84.  
  85.  
  86. return 0;
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement