AMD acquired the company ATI Technologies in 2006. The acquisition meant an opportunity to combine the graphics technology of ATI with the knowledge about x86 processors already in AMD. And that’s precisely what AMD has done. The result is the AMD Embedded G-Series APUs, a platform with the CPU and the GPU integrated on the same silicon die. Since the release in the beginning of 2011 embedded developers have had access to a whole new level of graphical performance in ultra-low power applications.
Cameron Swen, Divisional Marketing Manager at AMD, is comparing between the competing companies to describe what this means in terms of differentiating the offer to embedded developers.
– There’s only two leading graphics companies in the world and that’s AMD and Nvidia, he says. And there’s only two companies who do high-volume x86 production and that’s AMD and Intel. AMD is the only company that does both.
The first thing that draws the attention in the specification of the AMD Embedded G-Series APUs is the graphical performance. Direct X11 is supported, a useful feature to embedded developers that would like to utilize 3D graphics. Two independent displays can be used. The resolution of each display is beyond HD, up to 2560 x 1600, and digital display interfaces such as DVI and DisplayPort are supported. And it’s all there in a platform qualifying for the ultra-low power embedded segment. Cameron Swen introduces a specific term to point out the advantages.
– Putting the CPU and GPU onto the same silicon die has really enabled us to offer a solution that delivers performance that is well beyond the graphics performance of previous generations of integrated graphics and that’s why we call it “discrete class graphics”.
Proving performance through benchmarks
Performance has been proven in benchmarks, according to Cameron Swen.
– The easiest way to describe performance is that the AMD Embedded G-Series platform is in as small a footprint as Intel Atom E6xx series but it delivers better graphics performance than the Intel Core i5-520M in a fraction of the power and cost.
Click to enlarge
Block diagram of Embedded G-Series APU platform. SIMD Engine Array: High performance 3D and 2D graphics and GPU compute. Unified Video Decoder: HD video playback through hardware acceleration. High Performance Bus and Memory Controller: Fast system I/O and low-latency memory performance. x86 Cores: High-performance multi-core processing fully compatible with legacy x86 software. Platform Interface: Support for the latest industry standards.
The alternative to integrated graphics is adding a discrete GPU to the platform. Such a solution requires separate RAM memory for the CPU and GPU respectively. AMD Embedded G-Series APU uses a so called unified memory, meaning that memory is shared between GPU and CPU. It keeps the overall cost and power consumption down. Also it offers increased flexibility since the allocation of memory for the two is not statically set but is easily adjusted in BIOS.
The main application areas for AMD Embedded G-Series APU are defined by the impressive graphics performance, “discrete class graphics” to use the phrase introduced by Cameron Swen. Digital Signage, Point-of-sales and Information and Thin Clients are some of the targeted applications.
– We are seeing interest in a variety of applications, obviously the display connected applications, things like digital signage when the processor platform is integrated into the display, or into a very small form factor box that attaches to the display, he says.
The Hectronic H6059 is a COM module in the Qseven form factor based on the low power processors AMD Embedded G-series APUs T40E and T40R, single and dual X86 cores respectively and the Radeon 6250 GPU. Four PCI Express ports, eight USB 2.0, two SATA and LVDS are examples from the feature list together with digital display interfaces like DVI, HDMI and DisplayPort.
The focus when describing and discussing AMD Embedded G-Series of APUs is of course graphics but the integrated GPU is useful in other ways also. The CPU works sequentially. One operation is performed after the other, one at a time. The GPU is typically parallel to its performance which is an advantage for graphics, but also in other ways.
Utilizing the GPU in general purpose computing
Using a GPU for parallel processing is referred to as General Purpose GPU, GPGPU, computing and draws advantages from the parallel operation in the GPU. It means that the AMD Embedded G-Series APUs are an alternative to integrating an FPGA or a DSP in the x86 platform. – For example applications like machine vision are taking advantage of this, says Cameron Swen.
Medical imaging such as portable ultrasound equipment is another application that would benefit from GPGPU processing data in parallel. Swen describes that parallel processing is currently being evaluated in a network processing application for de-packet inspection where great amounts of data are processed and checked to avoid malicious attacks or computer viruses.
OpenCLTM is a standard to simplify GPGPU software development and is supported by the AMD Embedded G-Series platform.
– AMD has been working with open standards and we are a proponent of leveraging and helping to further open standards for development communities, says Cameron Swen.
Improving performance drastically
GPGPU can do wonders for performance, depending on the application.
– In some applications you’re seeing an order of magnitude performance improvement by going from just x86 CPU based processing to leveraging parallel processing on the same platform.
The AMD Embedded G-Series APUs exist in single and dual-core versions. Embedded applications are now beginning to utilize multiple cores. According to Cameron Swen legacy software is the reason why the conversion process towards multicore applications has been slow in the embedded space.
– Applications that have been around for a long time are just now able to utilize multicore processors. Developers have learned to leverage dual-core processing to parallelize single threaded operations, or perform additional operations on the same platform. Now developers are ready to begin developing heterogeneous multicore applications.
The picture illustrates the heterogeneous multicore aspect of the AMD Accelerated Processing Unit, APU. The AMD Embedded G-Series APUs contain one or more x86 cores (to the left) integrated with the on-die GPU (to the right), parallel to its typical operation. Cameron Swen predicts that the future will hold a great many variations to the theme of heterogeneous system architectures.
There are many ways to take advantage of multiple cores on a processor, it all depends on the application, of course. One strategy is to have the application software separated into two functional parts and use one of the cores to run an RTOS and the other for Windows or Linux. Such a strategy would offer the reliability and robustness of the RTOS in combination with what Windows and Linux offers for implementing a rich graphical interface. In this way the AMD Embedded G-Series APU could replace an application consisting of two separate platforms.
The future – Heterogeneous multicore processors
Cameron Swen looks towards the future and he believes in the trend towards heterogeneous multicore applications. The AMD Embedded G-Series APU is one example of this trend and , if he is right, more are to be expected in the future.
– Generally speaking I suspect you’re going to see heterogeneous multicore processors that leverage different types of cores. It might be x86 CPUs with GPUs. It might be ARM CPUs. It might be DSPs or FPGAs.