Struct ocl::ProQue [] [src]

pub struct ProQue { /* fields omitted */ }
[]

An all-in-one chimera of the Program, Queue, Context and (optionally) SpatialDims types.

Handy when you only need a single context, program, and queue for your project or when using a unique context and program on each device.

All ProQue functionality is also provided separately by the Context, Queue, Program, and SpatialDims types.

Creation

There are two ways to create a ProQue:

  1. [Recommended] Use ProQue::builder or ProQueBuilder::new().
  2. Call ::new and pass pre-created components.

Destruction

Now handled automatically. Freely use, store, clone, discard, share among threads... put some on your toast... whatever.

Methods

impl ProQue
[src]

[]

Returns a new ProQueBuilder.

This is the recommended way to create a new ProQue.

Calling ProQueBuilder::build() will return a new ProQue.

[]

Creates a new ProQue from individual parts.

Use ::builder instead unless you know what you're doing. Creating from components associated with different devices or contexts will cause errors later on.

[]

Creates a kernel with pre-assigned dimensions.

[]

Returns a new buffer.

The default dimensions and queue from this ProQue will be used.

The buffer will be filled with zeros upon creation, blocking the current thread until completion.

Use Buffer::builder() (or BufferBuilder::new()) for access to the full range of buffer creation options.

Errors

This ProQue must have been pre-configured with default dimensions. If not, set them with ::set_dims, or just create a buffer using Buffer::builder() instead.

[]

Sets the default dimensions used when creating buffers and kernels.

[]

Returns the maximum workgroup size supported by the device associated with this ProQue.

[UNSTABLE]: Evaluate usefulness.

[]

Returns a reference to the queue associated with this ProQue.

[]

Returns the contained context.

[]

Returns the current program build.

[]

Returns the current dims or panics.

[UNSTABLE]: Evaluate which 'dims' method to keep. Leaning towards this version at the moment.

[]

Returns the current dims or an error.

[UNSTABLE]: Evaluate which 'dims' method to keep. Leaning towards the above, panicing version at the moment.

Methods from Deref<Target = Queue>

[]

Issues all previously queued OpenCL commands to the device.

[]

Blocks until all commands in this queue have completed before returning.

[]

Enqueues a marker command which waits for either a list of events to complete, or all previously enqueued commands to complete.

[]

Deprecated since 0.13.0

: Use ::core instead.

Returns a reference to the core pointer wrapper, usable by functions in the core module.

[]

Returns a reference to the core pointer wrapper, usable by functions in the core module.

[]

Returns a copy of the Context associated with this queue.

[]

Returns the OpenCL device associated with this queue.

[]

Returns the cached device version.

[]

Returns info about this queue.

Trait Implementations

impl Clone for ProQue
[src]

[]

Returns a copy of the value. Read more

[]

Performs copy-assignment from source. Read more

impl Debug for ProQue
[src]

[]

Formats the value using the given formatter.

impl MemLen for ProQue
[src]

[]

Returns the exact number of elements of a volume of memory (equivalent to Vec::len()). Read more

[]

Returns the length of a volume of memory padded to the next multiple of incr. Read more

[]

Returns the exact lengths of each dimension of a volume of memory.

impl WorkDims for ProQue
[src]

[]

Returns the number of dimensions defined.

[]

Returns an array representing the amount of work to be done by a kernel. Read more

[]

Returns an array representing the offset of a work item or memory location. Read more

impl Deref for ProQue
[src]

The resulting type after dereferencing

[]

The method called to dereference a value