|
October 9, 2007Hit the Accelerator
AMD's Accelerated Computing initiative includes stream computing, graphics-processing chips and development environments that bring them all together. Helping the effort is AMD's Torrenza program, which was launched in mid-2006 to encourage research and development efforts around accelerated computing. It enables technology partners to leverage the AMD64 platform with Direct Connect Architecture to build accelerators that communicate more effectively with AMD Opteron™ processors. Under the Torrenza program, AMD has advanced the use of Tightly Coupled Accelerators on HyperTransport™ technology* and enhancements to PCIe within the PCI-SIG specifically for acceleration via graphics processing units (GPU) and stream computing. "We're working [with our technology partners] to develop and define the platforms for next-generation computing," says Patricia Harrell, director of stream computing at AMD. With its recent acquisition of graphics processor leader ATI Technologies, AMD is applying the principles of graphics acceleration to scientific and business computing needs. Stream computing, Harrell explains, involves a processor running particular mathematical operations on multiple sets of data simultaneously. This is well-suited to graphics rendering in video games, but it has equally compelling applications for highperformance computing and consumer-oriented technologies.
Accelerators can help offer tremendous performance boosts for mainstream tasks, including medical imaging, signal processing and analysis in government applications, as well as running data encryption and facial-recognition algorithms.
About a year ago, Harrell recalls, AMD came out with a developer's kit for the ATI R580 GPU and an application programming interface (API) for writing algorithms that leverage acceleration. AMD is currently working on the beta version of a new generation of these tools, designed to support next-generation GPUs. "We want to provide a development stack that helps developers get optimal performance from their applications," Harrell says. "We intend to have highlevel tools for those who prefer a C-like API, and anticipate publishing lowerlevel specifications to allow customers to tune performance at the machine level. Finally, we're working closely with technology partners like RapidMind." RapidMind is a development firm that began working with this technology and recently released version 2 of its programming platform. CEO Ray DePaul says that hardware acceleration enables astounding feats of parallel computing, but the software industry hasn't necessarily caught up and produced applications that are optimized for the faster environment. "We want to make sure software companies know how to leverage all these innovations," he says, "and let the software industry embrace and leverage the disruption that's going on. AMD is leading the charge on a number of these innovations." With multi-core processors today - and a future in which CPUs, GPUs and other accelerator technologies reside on the same chipsets - software developers need a platform on which they can build programs that stream easily, dividing instruction sets based on which operations require acceleration and which are best run on the CPU. RapidMind delivers that platform. "Our role is to make sure we give our customers access to the most interesting options available," says Michael McCool, RapidMind's chief scientist. He emphasizes that these are all emerging technologies, but, as shown in the above diagram, a future where heterogeneous processor cores work together to execute code at unprecedented speeds is hopefully not far off. "We make multi-core processors and accelerators easy to program, and we're seeing orders of magnitude increases in performance," DePaul says. On some comparative tests, RapidMind applications accelerated via GPU delivered approximately 32 times faster performance than on a CPU alone. The RapidMind platform enables programmers familiar with serial code to create parallel streams cleanly. "It works with all major C++ compilers," McCool says. "Just write the application, pick the platform that's most appropriate and futureproof it as platforms evolve over time." Applications developed using RapidMind scale automatically to accommodate as many processor cores as are available. The platform includes load-balancing and data-management optimizations, reducing bottlenecks between the increasing number of cores and buses on a chipset. "There are solutions available today for GPU-based accelerators," DePaul says, "and everybody wants to hear about other ways to achieve these levels of performance. We can leverage all the great advances coming out of AMD."
|


