Hardware acceleration uses purpose-built computer hardware (i.e. silicon microchips) to perform a limited number of tasks faster than a general purpose CPU (central processing unit).
What does that mean for you as a user? Often you have the option to enable or disable hardware acceleration in your applications. So how useful is hardware acceleration and what does it do?
What is Hardware Acceleration (Easy Edition)
Here is a simple explanation of hardware acceleration. Skip to the next section for an in-depth look at the process.
The CPU in your computer can solve just about any type of math problem. CPU circuits use more components to perform many types of tasks. They take up more space, generate more heat and are not designed as elegantly as a circuit built for one job.
With hardware acceleration, a special integrated circuit or microprocessor performs one specific task or a limited number of related tasks. The circuit design is not wasted for anything else and this provides a significant performance advantage.
Sometimes that hardware is built into the CPU itself. Most modern CPUs have special internal sections that speed up specific types of math used for tasks like video encoding and encoding.
In short, hardware acceleration means giving a specific task to a unique piece of hardware that is a jack of all trades and great at it.
What are the benefits of hardware acceleration?
What are the benefits of hardware acceleration for the application you are using? It often depends on the type of hardware and gear type, but the usual benefits apply to most situations.
- Hardware acceleration significantly improves performance. Your application will run more smoothly, or the application will complete a task in much shorter time.
- It frees up your CPU to do other things leading to: improved system performance. The CPU can transfer work to the specialized hardware and then go on to, for example, play video games at the same time as streaming videos or use an application such as disagreement†
- Hardware acceleration can be crucial for battery powered devices. That’s why your smartphone or tablet can play video for so long without straining your battery. A small specialized chip almost always consumes less power than a large, complex CPU.
Are There Any Downsides to Hardware Acceleration?
In general, hardware acceleration is something you want to leave out, but there are some instances where it can be a drawback.
- Hardware acceleration often causes instability. Despite being slow, CPUs are generally very reliable. For example, there’s little point in having hardware acceleration speed up video exporting and then crash the process before it’s done.
- Hardware acceleration is not flexible for new developments. For example, you can have hardware acceleration in your computer for a specific video encoding method, but when something better comes along, you need to buy new hardware to support it.
- The type of hardware acceleration that your system supports may not provide the best results. So if you prefer quality over speed, in some cases it is better to let the CPU do the work. For example, if you don’t have hardware support for HEVC encoding, but want the quality advantages over the H.264 CODEC, you should rely on CPU-based encoding.
Where can I use hardware acceleration?
There are too many forms of hardware acceleration available to list them all here, but here are a few common forms that you will encounter as an average computer user.
Browser hardware acceleration
Web browsers can be surprisingly CPU-heavy applications. Modern websites have beautiful graphic effects and high-fidelity images and sounds. Web applications that use 3D graphics benefit from GPU hardware acceleration.
Hardware acceleration is usually enabled by default in these applications and you should only disable it for troubleshooting.
Video Coding Acceleration
- Most CPUs now have acceleration for the regular H.264 video standard and support for H.265 is also growing.
- Recent Nvidia GPUs also have a special “NVENC” encoder chip that takes over the recording or streaming of game footage so it doesn’t affect game performance.
- Applications such as Adobe Premiere Pro provide GPU-based hardware acceleration, improving performance while editing and exporting projects.
General Purpose GPU (GPU) Acceleration
Graphics processors started out as 3D graphics accelerators, but modern GPUs can perform a fairly wide range of simple operations very quickly. These processors consist of hundreds or thousands of simple small processors all working in parallel.
This makes them ideal for certain types of data processing that must be run through an algorithm. GPUs are designed this way because graphics involve processing pixel values in parallel. So your GPU determines what each of the millions of pixels on the screen should look like at the same time. It turns out that deep learning and data mining applications also benefit from this approach to computation.
Ray Tracing and Machine Learning Acceleration
GPU developers have now added dedicated co-processors that do even more specialized work than the GPU cores.
- The latest generation of Nvidia GPUs have special components that do the math of ray tracinga method of drawing 3D images by simulating how light propagates through a scene.
- These GPUs have an extra processor that is very good at doing so-called “tensor” math. These are useful in applications that use machine learning through the neural network, which is becoming more and more common in everyday computing tasks.
Acceleration is everywhere
There is hardware acceleration in almost every computing device today, and as certain computing tasks become popular, computer scientists will create even more dedicated systems to make them run faster and more efficiently.
So sit back and enjoy the speed!