OMRGx: Programmable and Transparent Out-of-Core Graph Partitioning and Processing
OMRGx: Programmable and Transparent Out-of-Core Graph Partitioning and Processing
复制标题
DOI:
10.1145/3591195.3595268
复制
发表时间:
2023-06
期刊:
影响因子:
--
通讯作者:
Gurneet Kaur;Rajiv Gupta
中科院分区:
文献类型:
--
作者:
Gurneet Kaur;Rajiv Gupta
Partitioning and processing of large graphs on a single machine with limited memory is a challenge. While many custom solutions for out-of-core processing have been developed, limited work has been done on out-of-core partitioning that can be far more memory intensive than processing. In this paper we present the OMRGx system whose programming interface allows the programmer to rapidly prototype existing as well as new partitioning and processing strategies with minimal programming effort and oblivious of the graph size. The OMRGx engine transparently implements these strategies in an out-of-core manner while hiding the complexities of managing limited memory, parallel computation, and parallel IO from the programmer. The execution model allows multiple partitions to be simultaneously constructed and simultaneously processed by dividing the machine memory among the partitions. In contrast, existing systems process partitions one at a time. Using OMRGx we developed the first out-of-core implementation of the popular MtMetis partitioner. OMRGx implementations of existing GridGraph and GraphChi out-of-core processing frameworks deliver performance better than their standalone optimized implementations. The runtimes of implementations produced by OMRGx decrease with the number of partitions requested and increase linearly with the graph size. Finally OMRGx default implementation performs the best of all.