By Nebojsa Novakovic
The potential–and challenges of multi-core processing
In recent years, microprocessor designers began hitting the limitations of the single-core architecture. So they made the shift to power-efficient multi-core designs. Now they’re running up against the limitations of this format, as programming multi-core processors becomes increasingly complex. One path forward is to synergistically combine the potential of both CPU and GPU units. But integrating two very high powered processing units with somewhat differing performance and bandwidth requirements can pose interesting challenges to the overall system architecture.
AMD is proposing to solve these issues with a combination of hardware solutions and system-level programming tools, ushering in a new era of what has become known as heterogeneous computing.
The promise of Heterogeneous System Architecture (HSA)
While it has been recognized for some time that GPUs can be used to do parallel processing, the programmer’s task has been difficult if not extraordinary. That’s where AMD’s Heterogeneous System Architecture (HSA) comes in. HSA enables a new way to program applications using the GPU that can make it easier for mainstream programmers. AMD’s HSA is a full solution approach, enabling mainstream programmers to write parallel processing code as easily for the GPU as the CPU. And in some cases, the code may be able to execute on either the CPU or GPU, based on the system’s resources.
One way HSA can help solve the problem is by providing a unified address space for the CPU and GPU. With HSA, GPUs support the same page tables x86 CPUs use for mapping program memory pages to physical memory. Now GPUs can use a much larger memory map and, more importantly, a pointer is usually the same for code running on the CPU and code running on the GPU. The latter allows one copy of data to exist in memory and both the CPU and GPU can act upon it. The programmer doesn’t have to manage two or more copies of the same data. This design also helps improve performance because it is no longer necessary to make copies and keep them synchronized.
AMD is proposing an open platform architecture for HSA with published specifications. HSA will have a virtual ISA known as HSAIL (HSA Intermediate Language), a memory model, and a system specification. AMD is working with hardware, operating system, tools, and application companies to form an HSA foundation to guide the architectural development into the future.
Among the programmers I talk to, there is a great deal of excitement in being able to obtain that huge untapped performance potential from GPUs via HSA in an easy and transparent way, something that was difficult, if not impossible, until now
Combining the CPU and GPU: Bringing the APU to life
A hardware merger of the CPU and GPU, AMD’s Accelerated Processing Units (APUs) provide streamlined hardware-level integration of these two processing units. By the time of the AMD Fusion12 Developer Summit (June 11-14, 2012), AMD will have introduced “Trinity,” a second generation APU in market, along with the two first generation products AMD A-Series and AMD C and E-Series APUs formerly codenamed “Llano,” and “Brazos.”
The “Brazos”-based AMD C and E-Series APU combines an ultra-low power dual core CPU with an entry-level AMD Radeon™ GPU. Variants of these APUs are targeted at tablets, fanless notebooks, entry-level notebooks, and entry-level desktops. The “Llano”-based AMD A-Series APU combines two or four “Husky” CPU cores with a mid-range, AMD Radeon™ HD 6500-series discrete-class GPU. Husky cores are the next generation of the cores from the popular AMD Phenom™ processor series of AMD CPUs. The “Trinity”-based AMD A-Series variants target mainstream notebooks and mainstream desktops with good CPU performance and industry leading integrated graphics and video capabilities.
All three AMD APU families benefit from the greatly increased speed of communications between the CPU and GPU. Both the bandwidth and the latency for response are improved. All support DDR3 memory, DirectX 11 graphics, and have dedicated hardware for video playback. AMD C and E-Series has a single memory channel while AMD A-Series for both Llano and Trinity have dual memory channel support. To fully handle the memory bandwidth requirements of the larger GPU units in the A-Series of Llano and Trinity, DDR3 memory speeds up to 1600 and 1866 are supported, respectively.
The APU impact on system design: board, memory, graphics, and form factor
For a mainstream PC solution, the APU enables you to fit a quad core DirectX 11 3D gaming system with all the familiar features into a form-factor smaller than a Mini-ITX. Even if you add PCIe® expansion slots, there is still plenty of space for a Mini-ITX format solution; even a Pico-ITX form factor should be possible.
This opens up a design choice: One option is to stick with the default spec. The result will be smaller than most current TV set top boxes with near zero noise. The other choice is to stick with the Mini-ITX format, but provide performance enhancements through the use of a better cooling solution (to enable overclocking), adding faster memory options, and adding AMD Radeon™ Dual Graphics.
There were numerous online website reviews of the first generation APU desktop platforms discussing the various memory choices. Based on the current product performance and return on the memory speed investment, DDR3-1866 CL9 DIMMs are the best memory choice providing an outstanding performance per dollar. For the second generation APU, a DDR3-2133 CL10 or better memory should strike a good balance.
In summary, the AMD APU’s integration, balanced performance, expandability, and power usage enables new ultra-compact form factors for complete systems. The power consumption savings that can come from running a near teraflop of performance with less than 100W power can enable much “greener” high-end machines–up to the supercomputer range.
The APU impact in tablet and netbook space
The lowest power version of the AMD E-Series APU is suitable for an x86 tablet, which can run Windows 8 and avoid the dependence on application stores and such centralized resources. The added CPU and graphics horsepower of the APU enables new, productive form factors for tablets. How about a 11” or 12” inch full HD+ tablet with 16:10, 1920×1200 or even 3:2, 1920×1280 screen? Not only are these far more productive than movie screen 16:9 displays, but oriented in portrait mode they can emulate a printed page. Future ultrathin versions of quad-core AMD APUs in newer processes are designed to enable ultrahigh resolution 3D tablets that can also substitute for a proper PC.
Taking the APU further
A powerful GPU closely tied to the CPU not only benefits 3D graphics applications, but also applications with intense parallel computation. Examples include ultrafast large spreadsheet calculation, database manipulation, and media creation. On the larger scale, an APU-powered petaflop machine spread could enable more affordable supercomputing and large data analysis for many more users. An APU-based supercomputer could achieve its floating-point performance rating at one-third the power of the usual purely x86 CPU-based one, a massive advantage when combined with the right software.
Looking forward
The AMD APU and HSA approaches are revolutionary to programmers and users. AMD architecture changes not just the PC processor architecture, but the system design. That may not be obvious when looking at the first generation APUs. However, as AMD further develops APUs the benefit is bound to become obvious.
The HSA programming model will open new worlds of opportunities for the programmers, challenging them to harness the new performance potential. The more intricate interdependencies and benefits from that integration also will require system builders and designers to put more thought into maximizing their systems’ competitiveness. Over time, the benefits of the APU should spread top to bottom, from the supercomputer to the smartphone.
About the author: Based in Singapore, Nebojsa Novakovic is a strategic advisor to VR-Zone.com, Asia Pacific editor for TheInquirer.net, and frequently writes on high-end computing, system architecture, processors, 3-D graphics and related subjects.
Ready to learn more? AMD’s Fusion12 Developer Summit unites the industry’s experts in the world of heterogeneous computing. Held June 11-14, 2012, in Bellevue, Washington, the event provides deep, actionable content across ten tracks, covering heterogeneous computing as it relates to multimedia, graphics, cloud computing, security, big data, and more. Whether you’re responsible for planning or development, you’ll find the tools, knowledge, and resources you need to take advantage of this new era of computing. Learn more at amd.com/afds.
This paper is sponsored by AMD
© 2012 Advanced Micro Devices, Inc. All rights reserved. AMD, the AMD Arrow logo, and combinations thereof are trademarks of Advanced Micro Devices, Inc. Other names are for identification purposes only and may be trademarks of their respective owners.