Results 1 to 3 of 3

Thread: Cannot enqueue> ~65k threads

  1. #1

    Cannot enqueue> ~65k threads

    When attempting to enqueue a kernel with the following statement:
    (Where SIZE = 256, and queue is of type cl::CommandQueue as defined in the OpenCL C++ bindings)

    Code :
    cl::NDRange(1, 1), 

    An error defined as "CL_Invalid_Value" (-30) is returned. This problem does not occur if SIZE < 256 (where SIZE is a positive integer).

    Q: What/who is responsible for this error? Why can >65k threads not be created? Is this a limitation of the NVIDIA OpenCL runtime or the result of some form of EBCAK (Error between chair and keyboard)?
    Thanks in advance.

  2. #2
    Senior Member
    Join Date
    Jul 2009
    Northern Europe

    Re: Cannot enqueue> ~65k threads

    You should always be able to enqueue a global size of 65k as long as your local size is an even divisor of that. My guess is that with a local size of 1 and a global size of 65k you're running into a bug in the implementation here. Try setting the local size to 256 (or NULL) and see if it works. If it does, you should file a bug with the vendor.

  3. #3

    Re: Cannot enqueue> ~65k threads

    Changing the local size to a non-1 divisor of the global size resolved the problem - it seems that you are correct about it being a driver issue. A bug report has been field with NVIDIA. Thank you for your assistance in this matter of grave importance.

Similar Threads

  1. buffer enqueue question
    By choos3n in forum OpenSL ES
    Replies: 1
    Last Post: 03-27-2012, 02:41 PM
  2. eglCreatePbufferFromClientBuffer and Threads
    By Nils Pipenbrinck in forum EGL
    Replies: 2
    Last Post: 02-13-2007, 04:37 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
Proudly hosted by Digital Ocean