Hi!
I just updated from 3.0beta to 3.0 and now face two problems:
- I get an error message of CL_INVALID_ARG_SIZE in my program for passing a structure to the kernel. The struct is defined as:
GPU side
typedef struct{
float t,dt,tout,tmax,tstep;
int nstep;
}stepData;
CPU side
typedef struct{
cl_float t,dt,tout,tmax,tstep;
cl_int nstep;
}cl_stepData;
I set the 0th kernel argument as:
cl_stepData stepData; // defined globally in the class
…
clSetKernelArg(my_kernel, 0, sizeof(cl_stepData), (void*)&stepDataCL);
What did I do wrong? It worked fine with 3.0beta…
- In my “Cuda 3.0beta version” of my program I used clCreateContextFromType to create my context. In 3.0, I get an error stating that there are not devices of the specified type (CL_DEVICE_TYPE_GPU). It also worked in Cuda 3.0beta. I changed the code to use clCreateContext instead and I now get no error in this part of the program. Any idea why clCreateContextFromType does not seem to work in Cuda 3.0?
Best Regards,
Madsen