# Recent Developments in Low-Power AI Accelerators: A Survey
## 4 Results
### Acceleration Targets  
In Table 1, we present all targets that the low-power AI accelerators in this survey accelerate. In total, there are 17 different acceleration targets, divided into nine types of neural networks (CNN, GAN, DNN, ANN, RNN, LSTM, MLP, Transformer, SNN), four matrix algorithms (GEMM, SpGEMM, SpMatrix Transposition, Matrix Alg. ), two core mechanisms in neural networks (MAC and Attention), and two graph-based systems (Personalized Recommendation and Graph Mining). In Figure 10, we show the number of different acceleration targets over the years. We group the targets together, based on similarities in their structures, as follows: RNN refers to RNN and LSTM; DNN includes ANN and MLP; Transformer is grouped with the Attention mechanism; GEMM with SpGEMM; and finally the remaining targets (MAC, SpMatrix Transposition, PR, Graph Mining, Matrix Alg.) are grouped under the label 'Other'. \begin{table}
\begin{tabular}{c c c} \hline \hline
**Strategy** & **Description** & **Examples** \\ \hline \multirow{4}{*}{Pruning} & Remove parameters based on different criteria, & \\  & thereby reducing the workload (e.g., zero valued & [37; 38; 39; 40; 41] \\  & weights in DNNs and tokens in Transformers can be & \\  & removed, resulting in less computation). & \\ \hline \multirow{4}{*}{Quantization} & Mapping continuous values to discrete values (i.e., & \\  & 32-bit float to 16-bit integer), and doing the & \\  & computations on the discrete representation. & \\ \hline \multirow{4}{*}{Dataflow} & Reduce movement of data by specifying the flow of & \\  & data in the architecture (e.g., Weight Stationary, & [29; 47; 48; 49] \\  & Output Stationary, No Local Reuse, etc.). & \\ \hline \multirow{2}{*}{Near-Memory Processing} & Reducing the distance between memory and & \\  & processing components. & \\ \hline \multirow{4}{*}{Compute-in-Memory} & MAC computation in the analog domain, computed & \\  & in the memory array. Thereby removing the need for & \\  & movements of weights. & \\ \hline \multirow{4}{*}{Reduced flexibility} & Reduce the flexibility/reconfigurable of the & \\  & accelerator by restricting the hardware to perform & \\ \cline{1-1}  & specific, predetermined tasks (e.g, a PE might only & \\ \cline{1-1}  & compute a single operation, only support ReLU, etc.). & \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Common strategies used to decrease power consumption in AI accelerators. We observe that the most common acceleration target is CNN. This has been the case for previous years too, where CNN is the most common choice for accelerating. This stems from the start of the current popularity of neural networks and machine learning in general, as it started with the CNN in the early 2000s [52]. As CNNs are very good at image recognition tasks, and low-power AI accelerators include everything from accelerators in smartphones to complementary components in sensors and cameras, the origin of the CNN's popularity for low-power AI accelerators becomes clear. The second most commonly accelerated targets are DNNs and RNNs, the former can be attributed to the current popularity concerning neural networks in general while the latter to their frequent usage in speech recognition and natural language translation. A more recent addition to these targets are Transformers, that were introduced in 2017 with the paper by [PERSON] et al. [53]. As shown in Figure 10, the use of Transformer as the acceleration target for low-power AI accelerators increased in 2021 compared to previous years. In our opinion, this is attributed to the slow transition into the low-power domain for Transformer models. An example of another acceleration target is RecNMP [54], a NMP accelerator for accelerating PR (Personalized Recommendation) systems. RecNMP maximally exploits rank-level parallelism and temporal locality of production embedding traces to reduce energy consumption by 45.8% and increase throughput by 4.2 times. Accelerators can accelerate more than one target application.