The C Framework for OpenCL, cf4ocl, is a cross-platform pure C99
object-oriented framework for developing and benchmarking OpenCL
projects in the C programming language. It aims to:
- Promote the rapid development of OpenCL programs in C.
- Assist in the benchmarking of OpenCL events, such as kernel execution
and data transfers.
- Simplify the analysis of the OpenCL environment and of kernel
Currently cf4ocl 2 is alpha software. The stable 1.3.x branch can be
found at https://github.com/FakenMC/cf4ocl/tree/v1x.
- Wraps the verbose OpenCL C API in a object-oriented, clear and simple
- OpenCL version independent
- Very simple and thourough profiling
Clone, build and install the code, the a look at the
and the v2.0.0-alpha API.
The API may change until the beta release. Any feedback is appreciated.
- Simple and clear example
- Links to GitHub wiki pages with other information and examples
- Downloads, installing
Not yet implemented:
- OpenGL and DirectX interoperability
- Support for sub-devices
- Pipes and SVM (OpenCL 2.0 only)
Library code is licensed under LGPLv3, while the remaining code
(utilities, examples and tests) is licensed under GPLv3.
Other useful C frameworks/utilities for OpenCL
If cf4ocl does not meet your requirements, take a look at the following