The APU - Accelerated Processing Unit
This is the name given to a new approach to processor design by AMD. The basic idea of an APU is to put a CPU, GPU, and memory controller on same piece of silicon. This would result in better data transfer rates (since there is only nanometers to send data) and supposedly less power usage . For programmers, this would provide both scalar & parallel vector computing from the same hardware, possibly allowing easier parallel programming.
A little bit of History
AMD (CPU manufacturer) acquired ATI (GPU manufacturer) in '06 . They soon began working on a way to combine the CPU and GPU architectures. This new design was announced last year as the AMD Fusion APU – A hybrid of an AMD x86 CPU and an ATI GPU . Intel shortly afterward announced their own APU, codenamed Sandy Bridge. Not to be left out, NVidia recently announced Project Denver (which will be based on ARM processor)
As seen in this simplified block diagram of an APU (taken from an AMD whitepaper, the Intel design is likely similar), an APU is composed of several x86 CPU cores and a GPU (SIMD Engine Array in the diagram) connected by a high-speed data bus. Interestingly, the GPU and CPU components share the same memory.
http://sites.amd.com/us/Documents/48423B_fusion_whitepaper_WEB.pdf fig 2
Probable Impact s
The APU probably won't replace discreet GPUs for high-end graphics/gaming/parallel processing . AMD's Godfrey Cheng said on the AMD blog:
When designing silicon products, one must make tradeoffs in performance, power and size (cost). When we designed our initial APUs, we chose to place our emphasis on reducing power consumption and cost. In so doing we chose a level of graphics performance lower than that provided by our highest end discrete GPUs. Here is another way to look at it. An APU must run the whole system, which requires a mix of vector processors, scalar processors and cache memory. A discrete GPU is dedicated to graphics and parallel compute, so almost all the silicon can be dedicated to vector processing. So area for area, a discrete GPU will pack more punch for the gamer or video enthusiast.
As Cheng mentioned, the APU is designed for low power. This will greatly benefit low-power computers such as netbooks and tablets where a discrete GPU is not feasible, and the current graphics hardware is lousy at best.
Another benefit from having CPU and GPU on the same chip is the removal of the PCI Express Bus and the data transfer bottleneck associated with it. Current GPU's are great at high-speed parallel floating-point computation, but the overhead of sending data to GPU and getting it back can take longer than the computation itself, making GPU computation worthless in many instances. As an APU will have CPU cores and GPU cores separated by nanometers, as well as shared memory , the data transfer bottleneck all but disappears.