  Processing-in-memory (PIM) architectures are emerging to reduce data movement
in data-intensive applications. These architectures seek to exploit the same
physical devices for both information storage and logic, thereby dwarfing the
required data transfer and utilizing the full internal memory bandwidth.
Whereas analog PIM utilizes the inherent connectivity of crossbar arrays for
approximate matrix-vector multiplication in the analog domain, digital PIM
architectures enable bitwise logic operations with massive parallelism across
columns of data within memory arrays. Several recent works have extended the
computational capabilities of digital PIM architectures towards the
full-precision (single-precision floating-point) acceleration of convolutional
neural networks (CNNs); yet, they lack a comprehensive comparison to GPUs. In
this paper, we examine the potential of digital PIM for CNN acceleration
through an updated quantitative comparison with GPUs, supplemented with an
analysis of the overall limitations of digital PIM. We begin by investigating
the different PIM architectures from a theoretical perspective to understand
the underlying performance limitations and improvements compared to
state-of-the-art hardware. We then uncover the tradeoffs between the different
strategies through a series of benchmarks ranging from memory-bound vectored
arithmetic to CNN acceleration. We conclude with insights into the general
performance of digital PIM architectures for different data-intensive
applications.
