One of the greatest strengths of OpenCL as a heterogeneous programming tool is its capability to target multiple devices. While it’s normal to associate OpenCL, CUDA and massive parallel processing with GPUs, there are tasks which have coarser parallelism and can be better handled by CPUs.
In this upcoming Intel webinar they promise to demonstrate how to use the computing power of Intel hardware using OpenCL. This could be very useful if they discuss which types of algorithms are best suited for OpenCL targeting GPUs, OpenCL targeting CPUs and multithreading for CPUs with work stealing (like Microsoft’s Parallel.For or Intel’s own Silk developed at MIT).
AMD Fusion Developer Summit talks about OpenCL and heterogeneous computing are now available. Check out the videosif you want to know more about how OpenCL is being used to accelerate computer vision, linear algebra and for an overview of some debugging and profiling tools.
We are proud to report that our work with OpenCL GL interop and simulation of heat transfer was recognized by the prestigious AMD Developer Central hcInnovators as relevant work in the field of heterogeneous computing.
Our OpenCLCodeChecker editor is designed to allow developers to compile their OpenCL C99 code without having to compile the entire code, for convenience. It has been updated to incorporate some useful features:
– Added status bar to show line and column number – Select all with Ctrl+A – Fixed some _native and _half function typos
Altera announced early access to their FPGA program. At this point, however, it seems to be limited to a very specific group through courses. We hope the framework is made publicly available soon and that it enables the construction of embedded FPGA systems using OpenCL as the programming language. In any event, we at CMSoft hope this initiative will motivate many other hardware manufacturers to adopt OpenCL as mainstream language for parallel processing.
SIGGRAPH 2012 is approaching and, for the second year, we’ll be there to exchange ideas about parallel computing and OpenCL, as well as check up on the latest technologies which will be presented in the most important conference of computer graphics. Khronos Group has Birds of a Feather events which are the perfect meeting spot for OpenCL programmers and adopters.
We look forward to meeting everyone interested in exchanging ideas about parallel processing, technology or just to chat about life =]; feel free to send me an email.
Case study: heat transfer simulation using OpenCL OpenGL interop
Heat transfer and, more generally, parabolic partial differential equations are a very important class of problems in physics and mathematics. Analytic solutions aren’t available for real-world problems where initial and boundary conditions can be arbitrary.
CMSoft presents video tutorials and source code with detailed information about how to create the CLGL shared context, use OpenCL to accelerate the simulation of heat transfer and share an OpenGL texture to present the results to the user.
This is an example of the video tutorials to come should our user community show interest (in our poll, left menu) to watch a complete series of video tutorials. Otherwise we’ll concentrate our efforts and time on striving to create high-quality code content with online text explanation.
CMSoft poll: video tutorials about OpenCL using C#
Would you like us at CMSoft to create a series of video tutorials about how to develop OpenCL applications using C#? Vote using the poll in the left menu.
Video lectures and tutorials have become a major source of technical information. From MIT OpenCourseWare to Khan Academy, high quality education is being offered for free and made available to people all over the world.
Our idea is to record some videos showing the very first basics of the OpenCL memory model and data-parallel structure and from there move to on-demand topics such as image processing, __local memory usage, OpenCL/OpenGL interop or how to use OpenCL using multiple GPUs and CPUs. We might even cover C++ or advanced synchronization sometime.