AMD creates software development kit for stream computing
November 13, 2008 —
Chipmaker Advanced Micro Devices has furthered its objective of merging CPU and graphics processing unit (GPU) programming by creating a unified software development kit for development across its ATI accelerator product lines.
AMD today announced ATI catalyst driver packages that let specialized “stream computing” applications offload tasks onto the GPU in an effort to accelerate system performance. The drivers integrate with AMD’s compute abstraction layer, which enables programming in high-level languages rather than GPU-specific graphics programming.
That integration gives material form to AMD’s Fusion branding—the concept that AMD processing implicitly includes both “traditional, x86-64 [processing] and data-parallel [GPU], accelerated processing,” noted Richard Walsh, an IDC research director.
“GPUs make applications run better,” said Patricia Harrell, director of AMD’s stream computing group. She explained that while their architecture was designed with graphics in mind, graphics processors are in essence powerful parallel computers, similar to the vector-style supercomputers of yesteryear.
Areas that might benefit from stream computing include research and other specialized disciplines, desktop productivity applications, and Flash-based applications, Harrell said.
AMD is publishing its APIs and will contribute to industry standards on defining graphics processors for computation, she added. It is participating in work on Open Computing Language (OpenCL), a language for programming heterogeneous stream computing applications.
At present, however, the company’s efforts are limited to its own products. Harrell acknowledged the importance of cross-platform interoperability to AMD’s partners, and she said that standards such as OpenCL would ultimately lead to an ecosystem of development tools and third-party applications that leverage GPUs.
“We want to drive [stream computing] broadly and make it ubiquitous,” she said.
Walsh said that AMD, “through its connection with open-source initiatives and languages [Brook and OpenCL], helps to promote a single standard interface for programming GPU acceleration technology. As the performance-accelerating capabilities of GPUs have extended beyond their origins to applications in high-performance computing, video conversion and other areas, there is a need for a GPU programming interface or API that responds to the requirements of each of these new market segments and works across products from all the vendors in this space.”
OpenCL, which was created by Apple, is a response to that need and is likely to be widely supported, Walsh believes. But that does not mean developers won’t seek out vendor-specific solutions such as Nvidia’s Compute Unified Device Architecture or multicore development tool maker RapidMind’s API. He also expects to see efforts to put data-parallel acceleration on non-CPU-based accelerators.
Related Search Term(s): OpenCL, parallel processing, processors, AMD