We are very proud to inform that OpenCLTemplate now uses Cloo bindings and classes in a combination of Cloo's objective to make all OpenCL resources available to the programmer and OpenCLTemplate's goal to create an easy-to-use yet powerful OpenCL environment. Download the new OpenCLTemplate integrated with Cloo, visit CMSoft's OpenCL tutorial and feel free to report any problems by e-mail or using our forum.
This port will allow, in the near future, integration with OpenTK, a set of OpenGL bindings, in order to create an OpenCL/OpenGL interop environment which will be easy to use and that will allow programmers to easily manipulate OpenGL buffer objects directly in GPU memory.
If you want to know more about these resources, visit:
A new OpenCL toolbox has been developed for MATLAB, MathWorks widely known math software. At the moment this project has only encapsulated buffers and kernels, which probably limits GPU usage of memory. For instance, they don't mention usage of image objects.
It seems that they intend to override some matrix operations and perform them using the GPU but kernel programming will unavoidably have to be done using the OpenCL C99 code.
The CMSoft OpenCL tutorial covers the C99 programming with many examples in C# but it will surely be helpful if you intend to develop using MATLAB OpenCL or another language since the OpenCL code will essentially be the same.
More information about the MATLAB OpenCL toolbox is available here.
Following our last article, which compared computing architectures and OpenCL and CUDA/Stream, comes an interesting benchmark by SiSoftware showing that OpenCL doesn't lag behing proprietary standards. Their results show that CUDA was a little better in some aspects but we don't know if the code was properly optimized for NVidia GPUs.
Is parallel processing going to become a new standard? Will programmers in the future need to explicitly expose parallel and serial parts of the code to take full advantage of upcoming architectures? Why are Larrabee and Fusion a landmark in the parallel model?
CMSoft brings you a comparison between serial and parallel models, open and proprietary standards and current vs future architectures in order to explain why and how the industry is going towards OpenCL and parallel programming.
Check speedups that have been obtained by using parallel processing and visit CMSoft's Why parallel? section:
In the coding section, we are preparing some text search and language processing code which will be available in the repository early in February.
We at CMSoft would like to share with everyone our best wishes. To do so, we have created a new OpenCL OpenGL Interop example showing how to manipulate vertex coordinates and element indexes of OpenGL VBOs to create a derivation of the Sierpinski Gasket, which is a Sierpinski Tetrahedron.
The video below shows CMSoft's OpenCL "Christmas tree".
This is going to be the last post of this year, which doesn't mean we won't be working in the background. Expect many OpenCL accelerated algorithms to come next year.