nou

Segfault in clEnqueueNDRange() when is device memory full Catalyst 12.8

Discussion created by nou on Aug 19, 2012
Latest reply on Nov 9, 2012 by nou

I noticed bug in new Catalyst 12.8 OpenCL runtime. Program just segafault when i enqueue kernel with buffer which doesn't fit into device memory.

for(int i=0;i<count;i++)

    {

        buffers.push_back(new cl::Buffer(context, CL_MEM_READ_WRITE, size*sizeof(float), 0, &err));

        if(err)break;

        kernel.setArg(0, *buffers[i]);

        err = queue.enqueueNDRangeKernel(kernel, cl::NullRange, cl::NDRange(size));//crash at 5th loop

        cout << "enqueueu kernel" << err << endl;

 

        queue.flush();

    }

 

with runtime from original SDK i got normal -5 CL_OUT_OF_RESOURCE error.

 

OS: Linux Ubuntu 11.10

GPU: Radeon 5850 1GB

 

attached full source code test case.

Attachments

Outcomes