Hello,
I would usually expect such an error (CL_OUT_OF_HOST_MEMORY) in a function which transfers data from or to the GPU device.
But one of my __kernel’s returns this error code sometimes (since the new 2.3a sdk).
The strange thing about it is that it only runs on data which is positioned on the GPU and not on host data.
My main memory is almost empty (600MB of 3GB used), I’m running Linux32, Got a GTX295 GPU…
The only thing I could image is that it has something to do with the Kernel arguments.
Here are parts of the method is the Method
[codebox]__kernel void UpdateGrid(__global const float4* particle_pos,
__global int* grid_elements,
__global int* grid,
__global int* number_of_influenced_particles,
__global int* influenced_particle_ids,
int maximum_number_of_influenced_particles,
int particle_number,
int number_of_grid_cells,
int max_elements_per_grid_cell,
int cell_number_x,
int cell_number_y,
int cell_number_z,
int cell_number_x_times_y,
float particle_diameter,
float4 tcp_center_pos,
int half_cell_number_x,
int half_cell_number_y,
int half_cell_number_z,
int calculation_dimension) {
//Method body
}[/codebox]
The first 5 arguments are data arrays on the GPU and the rest are given parameters with set clSetKernelArg(…).
Or could it be that I got too much Kernel data as I got 6-7 Kernels (external .cl file is around 800 lines).
Thanks a lot
Daniel