OpenCL-CLHPP
OpenCL-Headers
OpenCL-CLHPP | OpenCL-Headers | |
---|---|---|
5 | 2 | |
350 | 647 | |
0.9% | 1.1% | |
6.5 | 5.7 | |
7 days ago | 20 days ago | |
C++ | C | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
OpenCL-CLHPP
-
Khronos Group releases OpenCL 3.0.14 update
Khronos has today released the OpenCL 3.0.14 maintenance update that introduces a new cl_khr_command_buffer_multi_device provisional extension that enables execution of a heterogeneous command-buffers across multiple devices. This release also includes significant improvements to the OpenCL C++ Bindings, a new code generation framework for the OpenCL extension headers, and the usual clarifications and bug fixes. The new specifications can be downloaded from the OpenCL Registry.
-
An example for OpenCL 3.0?
Please note that OpenCL consists of two parts: host API and a separate language which is used to write kernels (code which is going to be offloaded to devices). OpenCL specification describes host APIs as C-style APIs and that is what implementors has to provide. However, there are number of various libraries which provides bindings for other languages: - C++ - Python - Go - Rust
-
Conference: SYCL and IWOCL
opencl.hpp from https://github.com/KhronosGroup/OpenCL-CLHPP evolved from the C++ wrapper API that Ben Gaster started at AMD and I continued evolving. That work has continued since. It is a wrapper for the OpenCL runtime API, but the kernel side code is provided as kernel strings or SPIRV blobs through that API.
-
Getting Started
I was actually writing my own application in C++. I got the OpenCL CLHPP library downloaded. Wish me luck.
OpenCL-Headers
-
Khronos Group releases OpenCL 3.0.14 update
Khronos has today released the OpenCL 3.0.14 maintenance update that introduces a new cl_khr_command_buffer_multi_device provisional extension that enables execution of a heterogeneous command-buffers across multiple devices. This release also includes significant improvements to the OpenCL C++ Bindings, a new code generation framework for the OpenCL extension headers, and the usual clarifications and bug fixes. The new specifications can be downloaded from the OpenCL Registry.
-
I want to learn OpenCL but don't know where to start
Basically, it is harder to start without vendor SDK, but it is totally possible. If you have a device with claimed opencl support the only thing you have to install is their vendor-provided driver. Usually (95%) that will provide you an OpenCL.dll / libopencl.so which you can load dynamically, get address of needed API function and use that in your code. To develop from C/C++ environment it is enough to have dynamic library in your system and https://github.com/KhronosGroup/OpenCL-Headers from here.
What are some alternatives?
kompute - General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
JohnTheRipper - John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs [Moved to: https://github.com/openwall/john]
OpenCL-SDK - OpenCL SDK
OpenCL-Guide - A guide to help developers get up and running quickly with the OpenCL programming framework
pyopencl - OpenCL integration for Python, plus shiny features
ocl-icd - OpenCL ICD Loader (free software)
pocl - pocl - Portable Computing Language
opencl-intercept-layer - Intercept Layer for Debugging and Analyzing OpenCL Applications
hashcat - World's fastest and most advanced password recovery utility
nvidia-opencl-examples