diff options
author | Michael Meeks <michael.meeks@suse.com> | 2013-07-09 12:02:43 +0100 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@gmail.com> | 2013-07-11 00:25:37 -0400 |
commit | 9ed6e520afb8905596cd382e1e7fa79ba20063b5 (patch) | |
tree | fe6fa99b5ce03a693223f59c4c82c1be257ab609 /sc | |
parent | 98e811e43209faced8e8144267ded2032d44f4bc (diff) |
better opencl error reporting / diagnostics.
Diffstat (limited to 'sc')
-rwxr-xr-x | sc/source/core/opencl/openclwrapper.cxx | 9 | ||||
-rwxr-xr-x | sc/source/core/opencl/openclwrapper.hxx | 3 |
2 files changed, 9 insertions, 3 deletions
diff --git a/sc/source/core/opencl/openclwrapper.cxx b/sc/source/core/opencl/openclwrapper.cxx index 31f1589fcb4f..0c9472137119 100755 --- a/sc/source/core/opencl/openclwrapper.cxx +++ b/sc/source/core/opencl/openclwrapper.cxx @@ -2131,6 +2131,7 @@ double *OclCalc::OclSimpleDeltaOperation(OpCode eOp, const double *pOpArray, size_t global_work_size[1]; kEnv.mpkKernel = clCreateKernel(kEnv.mpkProgram,kernelName, &clStatus); + CHECK_OPENCL(clStatus); // Ugh - horrible redundant copying ... cl_mem valuesCl = allocateDoubleBuffer(kEnv, pOpArray, nElements, &clStatus); @@ -2147,12 +2148,16 @@ double *OclCalc::OclSimpleDeltaOperation(OpCode eOp, const double *pOpArray, clStatus = clSetKernelArg(kEnv.mpkKernel, 0, sizeof(cl_mem), (void *)&valuesCl); + CHECK_OPENCL(clStatus); clStatus = clSetKernelArg(kEnv.mpkKernel, 1, sizeof(cl_mem), (void *)&subtractCl); - clStatus = clSetKernelArg(kEnv.mpkKernel, 2, sizeof(cl_mem), + CHECK_OPENCL(clStatus); + clStatus = clSetKernelArg(kEnv.mpkKernel, 2, sizeof(cl_int), (void *)&start); - clStatus = clSetKernelArg(kEnv.mpkKernel, 3, sizeof(cl_mem), + CHECK_OPENCL(clStatus); + clStatus = clSetKernelArg(kEnv.mpkKernel, 3, sizeof(cl_int), (void *)&end); + CHECK_OPENCL(clStatus); clStatus = clSetKernelArg(kEnv.mpkKernel, 4, sizeof(cl_mem), (void *)&outputCl); CHECK_OPENCL(clStatus); diff --git a/sc/source/core/opencl/openclwrapper.hxx b/sc/source/core/opencl/openclwrapper.hxx index a0c132a2c49f..fe625546ee4e 100755 --- a/sc/source/core/opencl/openclwrapper.hxx +++ b/sc/source/core/opencl/openclwrapper.hxx @@ -12,6 +12,7 @@ #include <config_features.h> #include <formula/opcode.hxx> +#include <sal/detail/log.h> #include <cassert> #include <CL/cl.h> #endif @@ -55,7 +56,7 @@ typedef int (*cl_kernel_function)(void **userdata, KernelEnv *kenv); #define CHECK_OPENCL(status) \ if(status != CL_SUCCESS) \ { \ - printf ("error code is %d.\n",status); \ + printf ("OpenCL error code is %d at " SAL_DETAIL_WHERE "\n", status); \ return 0; \ } |