Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define N 15
- __global__ void funkcja(int *a, int *b, int *c)
- {
- int indeks = blockIdx.x;
- if (indeks < N) {
- c[indeks]= a[indeks] + b[indeks];
- }
- }
- int main(void)
- {
- int *a, *b, *c;
- cudaMallocManaged(&a, N*sizeof(int));
- cudaMallocManaged(&b, N*sizeof(int));
- cudaMallocManaged(&c, N*sizeof(int));
- for (int i = 0; i<N; i++) {
- a[i] = 2 *i;
- b[i] = 2 *i;
- }
- funkcja<<<N,1>>>(a, b, c);
- cudaDeviceSynchronize();
- for (int i = 0; i< N; i++) {
- printf("%d + %d = %d\n", a[i], b[i], c[i]);
- }
- cudaFree(a);
- cudaFree(b);
- cudaFree(c);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement