Tests on GPU & CPU Coding Differences
Amazing Hardware Acceleration - Tests on GPU & CPU Coding Differences
Hardware Acceleration means using hardware to perform some function faster than is possible in software running on the general purpose CPU. And GPU Hardware Acceleration is most used in consumer computing area. For better understanding hardware acceleration working principle, this article tries to instruct you with the differences between GPU and CPU coding methods.
While, at the beginning, let's take a look at traditional video transcoding flows:
A raw video data (frames) first passes through Decoder component. And then they are pre-processed with resizing, de-interlacing, shrinking and other processors. So it is similarly knowable that every single delay at any one component, the whole video transcoding process will be postponed.
As for the present Windows PC and even Apple Mac, the biggest bottleneck of the video transcoding lies in the fourth procedure - Encoder, no matter whether high-end multi-core CPUs is enabled. Here GPU (graphics processing unit) puts its hands on. Thanks to parallel architecture, GPU allows multiple pipes to processing the decoding / encoding process rather than CPU's multi-Core only.
The result of GPU and CPU test is that GPU Hardware Acceleration's improving encoding performance usually 4 to 6 times better CPU alone. Accordingly, it can be concluded that currently the GPU is mainly working on the video encoding process, leaving the CPU to focus on the decoding and pre-processing.
While you should also note that, to achieving an ideal Hardware Acceleration, your GPU and CPU need to properly match. First, make sure the correct GPU is being used for a suitable job: Tesla is for high-performance server / data center, Quadro for workstations, and GeForce for consumers computers. As a general rule, the GPU encoding performance mainly depends on the number of CUDA cores. For example, the GeForce GT 330M GPUs is inferior to Tesla C2050's 448 cores, which will perform considerably better.
You can see that nearly all computers will greatly take advantages of GPU Hardware Acceleration (GPU and CPU are well paired).