Contexts
A Blaze context is the owner of a single OpenCL context and one or more OpenCL command queues, all of them associated to the context.
It's task is to manage the distribution of command queues amongst the various enqueue functions, maximizing performance by distributing the work amongst them.
The simplified signature of the Context
trait is the following:
pub trait Context {
fn as_raw (&self) -> &RawContext;
fn queues (&self) -> &[RawCommandQueue];
fn next_queue (&self) -> &RawCommandQueue;
}
The queues
method returns a list with all the command queues owned by the context.
The next_queue
method returns the next command queue to be used in an enqueue function.