| Portability | non-portable (GHC extensions) |
|---|---|
| Stability | experimental |
| Maintainer | Martin Dybdal <dybber@dybber.dk> |
| Safe Haskell | None |
Foreign.OpenCL.Bindings.CommandQueue
Description
OpenCL bindings for command-queues. Command Queues are used to schedule operations (such as memory operations and kernel invocations) on a given device. Multiple command queues can be used with a single device if no synchronization between individual tasks is desired. See section 5.1 in the OpenCL specification
- createCommandQueue :: Context -> DeviceID -> [CommandQueueProperties] -> IO CommandQueue
- queueContext :: CommandQueue -> IO Context
- queueDevice :: CommandQueue -> IO DeviceID
- queueProperties :: CommandQueue -> IO [CommandQueueProperties]
- flush :: CommandQueue -> IO ()
Documentation
Arguments
| :: Context | The |
| -> DeviceID | The |
| -> [CommandQueueProperties] | Can be used to specify out-of-order execution and enable profiling |
| -> IO CommandQueue |
Create a new CommandQueue for scheduling operations on the given device.
queueContext :: CommandQueue -> IO ContextSource
The Context this CommandQueue is associated with
queueDevice :: CommandQueue -> IO DeviceIDSource
The DeviceID of the device this CommandQueue is associated with
queueProperties :: CommandQueue -> IO [CommandQueueProperties]Source
The list of CommandQueueProperties specified when the
CommandQueue was created.
flush :: CommandQueue -> IO ()Source
Issues all previously queued OpenCL commands in the
CommandQueue to the device associated with the
CommandQueue. flush only guarantees that all queued commands to
the CommandQueue get issued to the appropriate device. There is
no guarantee that they will be complete after flush returns. (See
also finish)