3 #define N ((1024 * 512) + 1)
4 #define COUNTERTYPE unsigned int
9 unsigned int *__restrict a
;
10 unsigned int *__restrict b
;
11 unsigned int *__restrict c
;
13 a
= (unsigned int *__restrict
)malloc (N
* sizeof (unsigned int));
14 b
= (unsigned int *__restrict
)malloc (N
* sizeof (unsigned int));
15 c
= (unsigned int *__restrict
)malloc (N
* sizeof (unsigned int));
17 for (COUNTERTYPE i
= 0; i
< N
; i
++)
20 for (COUNTERTYPE i
= 0; i
< N
; i
++)
23 #pragma acc kernels copyin (a[0:N], b[0:N]) copyout (c[0:N])
25 for (COUNTERTYPE ii
= 0; ii
< N
; ii
++)
26 c
[ii
] = a
[ii
] + b
[ii
];
29 for (COUNTERTYPE i
= 0; i
< N
; i
++)
30 if (c
[i
] != a
[i
] + b
[i
])