Accelerator architectures
What Are Accelerator Architectures?
Accelerator architectures are hardware designs that perform specific computational tasks with substantially higher performance or energy efficiency than a general-purpose processor executing the same operations in software. Rather than providing a flexible instruction set for arbitrary programs, an accelerator dedicates silicon area and memory bandwidth to a narrow class of operations, achieving throughput or latency targets that a CPU or general-purpose core cannot match within the same power budget. The field draws on computer architecture, digital circuit design, and algorithms research, and its scope has expanded rapidly with the growth of deep learning, signal processing, and scientific simulation workloads.
The distinction between an accelerator and a general-purpose processor lies in the degree of specialization. Graphics processing units (GPUs), field-programmable gate arrays (FPGAs), digital signal processors (DSPs), and application-specific integrated circuits (ASICs) all occupy different points on the spectrum between flexibility and efficiency. Each trade-off has driven separate architectural traditions with distinct programming models and toolchains.
Domain-Specific Accelerators
Domain-specific accelerators are designed around the computational patterns of a particular application domain. Google's Tensor Processing Unit (TPU), introduced in 2016 for neural network inference, organizes computation as a systolic array that moves data through a grid of multiply-accumulate units without repeated access to off-chip memory. Similar architectures underpin accelerators from other industry laboratories. A survey on deep learning hardware accelerators for heterogeneous HPC platforms from ACM Computing Surveys examines the architectural choices across GPU, TPU, FPGA, and neuromorphic designs with respect to throughput, power, and programmability. Neural network inference accelerators are also deployed at the edge, where strict power envelopes require aggressive quantization from 32-bit floating point down to 8-bit integer or binary representations.
Memory Hierarchy and Dataflow Organization
A central challenge in accelerator design is moving data from off-chip DRAM to the compute units fast enough to keep the arithmetic units occupied. Accelerators address this through large on-chip SRAM scratchpads, tiled computation that maximizes data reuse within a tile before fetching new data, and high-bandwidth memory (HBM) stacks placed adjacent to the compute die. The dataflow organization, whether weight-stationary, output-stationary, or row-stationary, determines which operand remains resident in local registers while the others stream through. FPGA-based neural network inference accelerators reviewed in ACM Transactions on Reconfigurable Technology and Systems provide detailed comparisons of how memory bandwidth constraints shape the achievable throughput on reconfigurable devices versus ASICs.
Reconfigurable and Programmable Accelerators
FPGAs offer a reconfigurable substrate where the interconnect and logic blocks can be reprogrammed for different kernels after manufacturing, occupying a middle ground between the rigidity of an ASIC and the generality of a CPU. This makes FPGAs attractive for prototyping accelerator ideas and for production deployments where the target algorithm changes over the product lifetime. Spatial computing architectures, which map algorithmic data flow graphs directly onto hardware, represent a related approach. Hardware accelerator architectures for artificial intelligence applications surveys the current state of GPU, FPGA, and neuromorphic processor designs with analysis of where each fits in the training-versus-inference spectrum. Coarse-grained reconfigurable arrays (CGRAs) occupy a newer point on the spectrum, offering word-level reconfigurability rather than bit-level FPGA flexibility, with the goal of reducing reconfiguration overhead for compute-intensive loops.
Applications
Accelerator architectures have applications in a range of fields, including:
- Deep learning training and inference in cloud data centers and edge devices
- Image and video processing pipelines in autonomous vehicles and surveillance systems
- Scientific computing for molecular dynamics, climate modeling, and fluid simulation
- Software-defined radio and digital signal processing in telecommunications equipment
- Cryptographic acceleration for public-key operations and hash functions in network security hardware