From WikiChip
Hardware Acceleration
Revision as of 19:21, 19 November 2017 by At32Hz (talk | contribs)

Hardware acceleration refers to the use of specialized hardware circuitry in order to speed up certain computational tasks. Hardware acceleration is designed to speed-up certain functions more than would otherwise be possible using generic software on a general-purpose microprocessor. The hardware circuitry that performs the acceleration is called an accelerator and the software utilizing those accelerators are called hardware-accelerated software.

Overview

As traditional single-core performance improvements slows down, a need to improve the performance of certain algorithms continues. Additionally, repetitive algorithms can consume a large amount of the processor's resources. Hardware acceleration is any use of specialized hardware circuitry used to speed up computational tasks. Typically, the speed-up is by as much as an order of magnitude vs. what's possible using ordinary software on a general-purpose microprocessor. Additionally, by off-loading those intense computations to be done by specialized hardware, the main processor's utilization goes down, freeing up resources for other workloads.

Typical accelerated workloads

  • Artificial Intelligence
  • Compression
  • Cryptography
  • Graphics
  • Vector Manipulation