  Graph Neural Networks (GNNs) are emerging as a formidable tool for processing
non-euclidean data across various domains, ranging from social network analysis
to bioinformatics. Despite their effectiveness, their adoption has not been
pervasive because of scalability challenges associated with large-scale graph
datasets, particularly when leveraging message passing.
  To tackle these challenges, we introduce NeuraChip, a novel GNN spatial
accelerator based on Gustavson's algorithm. NeuraChip decouples the
multiplication and addition computations in sparse matrix multiplication. This
separation allows for independent exploitation of their unique data
dependencies, facilitating efficient resource allocation. We introduce a
rolling eviction strategy to mitigate data idling in on-chip memory as well as
address the prevalent issue of memory bloat in sparse graph computations.
Furthermore, the compute resource load balancing is achieved through a dynamic
reseeding hash-based mapping, ensuring uniform utilization of computing
resources agnostic of sparsity patterns. Finally, we present NeuraSim, an
open-source, cycle-accurate, multi-threaded, modular simulator for
comprehensive performance analysis.
  Overall, NeuraChip presents a significant improvement, yielding an average
speedup of 22.1x over Intel's MKL, 17.1x over NVIDIA's cuSPARSE, 16.7x over
AMD's hipSPARSE, and 1.5x over prior state-of-the-art SpGEMM accelerator and
1.3x over GNN accelerator. The source code for our open-sourced simulator and
performance visualizer is publicly accessible on GitHub https://neurachip.us
