Advertisement
Guest User

CUDA.cu

a guest
Oct 4th, 2012
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.21 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <unistd.h>
  3.  
  4. #define MAX_TITKOS 10000
  5. #define OLVASAS_BUFFER 256
  6. #define KULCS_MERET 4
  7.  
  8. __global__
  9. void exor(int meret, char *temp)
  10. {
  11.     char kulcs[KULCS_MERET];
  12.    
  13.     kulcs[0] = (char) (blockIdx.x + 48);
  14.     kulcs[1] = (char) (threadIdx.x + 48);
  15.     kulcs[2] = (char) (threadIdx.y + 48);
  16.    
  17.     for(int ii = '0'; ii <= '9'; ii++)
  18.     {
  19.        kulcs[3] = ii;
  20.        printf("Kulcs: [%c%c%c%c]\n", kulcs[0], kulcs[1], kulcs[2], kulcs[3]);
  21.     }
  22. }
  23.  
  24. int main()
  25. {
  26.     int olvasott_bajtok;
  27.     char *titkos = new char[MAX_TITKOS];
  28.     char *p = titkos;
  29.  
  30.     while ((olvasott_bajtok =
  31.                 read (0, (void *) p,
  32.                       (p - titkos + OLVASAS_BUFFER <
  33.                        MAX_TITKOS) ? OLVASAS_BUFFER : titkos + MAX_TITKOS - p)))
  34.         p += olvasott_bajtok;
  35.  
  36.     int meret = p - titkos;
  37.  
  38.     for (int i = 0; i < MAX_TITKOS - meret; i++)
  39.         titkos[meret + i] = '\0';
  40.    
  41.     char *temp;
  42.  
  43.     cudaMalloc((void**) &temp, meret);
  44.     cudaMemcpy(temp, titkos, meret, cudaMemcpyHostToDevice );
  45.    
  46.     dim3 dimBlock(10, 10);
  47.    
  48.     exor<<<10, dimBlock>>>(meret, temp);
  49.    
  50.     cudaFree(temp);
  51.     delete[] titkos;
  52.  
  53.     return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement