I am developing a rendering server that is supposed to allow multiple clients to connect and request images to be rendered. I am using a multi-threaded server that creates a thread for each client that connects. Currently I create 2 command queues for each thread (client). I have a 3 GPU board system and create a command queue for each board. So for one client connected I create 6 command queues. I got it working with one client. I then tried testing with 2 clients simultaneously connected (so 2 threads and 12 command queues).
I am getting an error (-5 => CL_OUT_OF_RESOURCES) when I try to create the 10th, 11th, or 12th command queue (varies on run). Is there a low limit on the number of command queues? Sharing command queues between threads will be a nightmare. Is there some way to increase this limit significantly if there is a limit? I am on 64-bit linux; seems like I ought to have the resources to have many of these. I was hoping to have up to 30-50 threads which would be hundreds of command queues.
Thanks for any help, -Derek