Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <assert.h>
- #include <stdio.h>
- #include "loopppcg_kernel.hu"
- void test(int *arr) {
- {
- #define cudaCheckReturn(ret) \
- do { \
- cudaError_t cudaCheckReturn_e = (ret); \
- if (cudaCheckReturn_e != cudaSuccess) { \
- fprintf(stderr, "CUDA error: %s\n", cudaGetErrorString(cudaCheckReturn_e)); \
- fflush(stderr); \
- } \
- assert(cudaCheckReturn_e == cudaSuccess); \
- } while(0)
- #define cudaCheckKernel() \
- do { \
- cudaCheckReturn(cudaGetLastError()); \
- } while(0)
- int *dev_arr;
- cudaCheckReturn(cudaMalloc((void **) &dev_arr, (5) * sizeof(int)));
- {
- dim3 k0_dimBlock(5);
- dim3 k0_dimGrid(1);
- kernel0 <<<k0_dimGrid, k0_dimBlock>>> (dev_arr);
- cudaCheckKernel();
- }
- cudaCheckReturn(cudaMemcpy(arr, dev_arr, (5) * sizeof(int), cudaMemcpyDeviceToHost));
- cudaCheckReturn(cudaFree(dev_arr));
- }
- }
- int main(){
- int arr[] = {1, 2, 3, 4, 5};
- test(arr);
- return 1;
- }
Add Comment
Please, Sign In to add comment