An Efficient ReRAM-based Processing-in-Memory Architecture for Graph Computing
Defence

An Efficient ReRAM-based Processing-in-Memory Architecture for Graph Computing

Graph analysis is the basis for many applications, e.g., hardware optimization and streaming data problems. With an increase in data size of many emerging domains such as Internet-of-things, social networks, and smart devices, which generate a lot of data like images and documents, analysis and processing of these big data in a short time is crucial. Graph processing is an important analysis method for machine learning and recommendation system. The ability to represent relationships between vertices or entities is a significant advantage over relational data structures. Processing-in-memory (PIM) is a novel technology that addresses the memory wall of traditional architectures in the memory intensive application like big data and blockchain. Graph processing on traditional architectures faces irregular memory accesses that lead to a significant data movements and waste a large amount of energy and time. ReRAM-based PIM provides a high parallelism level because ReRAM has crossbar architecture, in addition to significant reduction in energy consumption. In addition, ReRAM has the capability of both computation and data storage and its leakage power is negligible. In this work, we propose a new ReRAM-based processing-in-memory architecture called GraphA and design a new data layout and preprocessing algorithm for graph traversal and graph application in GraphA. We investigate the problem of huge space of adjacency matrix and graph data and find a suitable mapping for new ReRAM-based architecture, based on reorder and preprocessing of prior graph data structure. Moreover, the runtime scheduling has been changed. Evaluations on six real-world graphs from SNAP shows a significant performance and energy consumption improvement by GraphA compared with prior related architectures.

Latest Posts
Categories