Crate ocl [−] [src]
| GitHub
Rust implementation of OpenCL™.
This documentation is generally built from the dev
branch and may be newer than what is on crates.io and the master branch.
Documentation is very much a work in progress, as is the library itself. Please help by filing an issue about unclear and/or incomplete documentation and it will be addressed.
An explanation of how dimensions and sizes of buffers and work queues are intended to be used will be coming as soon as a few more things are ironed out.
Low Level Interfaces
For lower level interfaces and to use OpenCL features that have not yet been implemented, see the raw
and cl_h
modules (still poorly documented... use the source, Luke).
Library Wide Panics
Many operations will panic upon any OpenCL error [UPDATE: Error handling is in a state of transition, some things panic, some return results]. More work needs to be done
evaluating which errors are easily uncovered during development
and are therefore better off
continuing to panic such as invalid kernel code or invalid sizes of things, and which errors are
more run-timeish and should be returned in a Result
.
Help Wanted
Please help complete any functionality you may need by filing an issue or creating a pull request.
“OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.”
Modules
cl_h |
Rust bindings for the OpenCL ABI |
raw |
Thin wrappers for the OpenCL FFI functions and types. |
util |
Utility and debugging functions. |
Structs
Buffer |
An OpenCL buffer with an optional built-in vector. |
Context |
An OpenCL context for a particular platform and set of device types. |
EventList |
A list of OpenCL events which contain status information about the command that created them. Used to coordinate the activity of multiple commands. |
Image |
[WORK IN PROGRESS][UNTESTED][UNUSED] An OpenCL Image. |
Kernel |
An OpenCL kernel. |
ProQue |
A chimera of the |
ProQueBuilder |
A builder for |
Program |
An OpenCL program, sometimes referred to as a build. |
ProgramBuilder |
Compilation options for building an OpenCL program. Used when creating
a new |
Queue |
An OpenCL command queue. |
Enums
BuildOpt |
A build option intended for use either by the compiler as a command line switch or for inclusion at the top of the final build source code. |
Error |
An enum containing either a |
SimpleDims |
A simple implementation of a type specifying the sizes of up to three dimensions. |
WorkDims |
Defines the amount of work to be done by a kernel for each of up to three dimensions. |
Traits
BufferDims |
A type which has dimensional properties allowing it to be used to define the size of buffers and work sizes. |
BufferTest | |
OclNum |
A number compatible with OpenCL. |
Type Definitions
Result |
|