AMD On Stream’s Prospects
TH: Enough with the Inquisition! Let’s look forward. Do you anticipate Stream and GPGPU technology being applied in the consumer space beyond today’s video player/editor/transcoder apps?
AMD: Yes, very much so. Applications like physics simulation, AI, and video processing are natural to accelerate using Stream/GPGPU/parallel technologies. The key challenge is to get programmers to start using the hardware and programming languages/APIs that are available to them to properly model the compute problem. OpenCL and DirectX 11 Compute make major advances in how a programmer can harness the processing power of a modern GPU.
TH: Some have proposed that the GPU will someday overtake the CPU in prominence, and certainly the GPGPU benefits we’ve witnessed make that seem more plausible. Given the impending arrival of Fusion and the continuing evolution of Stream, what is AMD’s stance on the role of graphics processing and the GPU going forward?
AMD: It is simply wrong and, quite frankly, self-serving when companies say that a GPU is the most important processor in the PC. It is equally wrong to say x86 CPUs are the most efficient processors to solve all compute problems. The answer is “it depends.” The workload or compute problem determines what is the best processor to handle that particular workload or compute problem. CPUs are great for linear/out-of-order/unpredictable compute problems while GPUs are great for parallel workloads like video processing, physics simulation, or AI. Trying to modify or adapt a compute problem to suit the hardware that a company happens to sell is not the way forward.
It is also easy to forget a third class of processor—fixed function. Fixed function blocks are often overlooked these days because they are no longer in vogue. People mistakenly believe that general purpose devices cure all. Rubbish. Fixed function blocks for things like video decoding or tessellation are not only great from a power perspective but they also scale very well from the top of a product stack to the bottom. Those products that only have general purpose processing will be less power efficient and will not scale better than processors that balance general purpose and fixed function. Finally, fixed function blocks are best for compute problems that are neither efficient for CPUs or GPUs, like the reverse entropy portion of H.264 decode.
The best solution is a good balance of x86 CPU, modern GPU, and fixed function. A balanced platform for the average consumer will be the best solution as it will have all the compute elements. AMD’s Fusion products will balance all three processor types. Having a fast CPU or GPU alone won’t cut it today.
TH: Given the recent hotfix and Stream update, how would AMD now characterize Stream versus CUDA in terms of quality and performance?
AMD: Well, I usually prefer to provide the hardware and software so that you can test and build your own opinion, but objectively I believe that the ATI Stream transcoding framework has leapfrogged CUDA transcoding with this update both on performance and quality. I say “objectively” because it’s first time we have an application (MediaShow Espresso) that enables both technologies and thus direct comparison.