PIMMiner: A High-performance PIM Architecture-aware Graph Mining Framework
Graph mining applications, such as subgraph pattern matching and mining, are widely used in real-world domains such as bioinformatics, social network analysis, and computer vision. Such applications are considered a new class of data-intensive applications that generate massive irregular computation workloads and memory accesses, which degrade the performance significantly. Leveraging emerging hardware, such as process-in-memory (PIM) technology, could potentially accelerate such applications. In this paper, we propose PIMMiner, a high-performance PIM architecture graph mining framework. We first identify that current PIM architecture cannot be fully utilized by graph mining applications. Next, we propose a set of optimizations and interfaces that enhance the locality, and internal bandwidth utilization and reduce remote bank accesses and load imbalance through cohesive algorithm and architecture co-designs. We compare PIMMiner with several state-of-the-art graph mining frameworks and show that PIMMiner is able to outperform all of them significantly.
READ FULL TEXT