AMD has released a free update to its ATI Stream SDK that offers OpenCL support for CPUs, taking the power of that parallel-processing technology one step closer to true usability.
And if you're worried that the company is stepping off the open-standards reservation by doing so, fear not: AMD has submitted the appropriate conformance logs to the consortium managing the OpenCL standard, the Khronos Group, for certification.
OpenCL was described by the Khronos Group when version 1.0 was released last December as "the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices."
In a nutshell, OpenCL divides workloads among CPU and GPU cores, accelerating tasks by divvying up processes among the cores, offloading such parallel-data tasks as media, video, audio, and graphics processing that would otherwise be handled by the CPU onto the broad parallel-processing shoulders of a modern GPU.
In a Wednesday announcement, AMD claims that the OpenCL for CPU beta download will make it easier for developers participating in the ATI Stream SDK 2.0 Beta Program to leverage the untapped oomph of multicore x86 CPUs.
In canned statement, AMD SVP Rick Bergman said: "By supporting multi-core CPUs and GPUs with our OpenCL environment, AMD gives developers easy access to both processing resources, so they can efficiently write cross-platform applications for heterogeneous architectures with a single programming interface."
Bergman has a point. Until Intel releases its many-core Larrabee processor in the first half of next year, AMD is the only company that can toss a homegrown OpenCL net over both x86 CPUs and GPUs from its own stable.
Patricia Harrell, AMD's director of Stream Computing, blogs that OpenCL is a "game-changing development." That may not be an overstatement. There's a boatload of underutilized power in most GPU implementations and getting it to work in concert with a CPU - as OpenCL aims to do - could enable such as-yet-unrealized computational dreams as real-time ray-tracing and infallible voice recognition.
All well and good, but our experience with OpenCL has shown it to be a bear to program with. Perhaps AMD's new OpenCL for CPU beta will lessen the hassle of OpenCL coding and make the marriage of CPUs and GPUs a happier one.
A more-definite answer to that question will have to wait until the AMD takes the next ATI Stream SDK out of beta, which is planned for later this year. ®