Three-Class Vertex-Degree Graph Partitioning for Balanced Loads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large-scale graph computing on heterogeneous many-core systems faces challenges due to unbalanced load and scalability issues, particularly with one-dimensional and two-dimensional partitioning methods, which lead to inefficient communication and storage in supercomputers.
Innovation Solution
A 3-class vertex degree-aware 1.5-dimensional graph partitioning method that divides vertices into extremely high, high, and ordinary degree classes, optimizing edge storage and communication by using super nodes with internal grids, and implementing adaptive traversal modes and segmented subgraphs to balance load and minimize communication.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If one-dimensional partitioning method is used, then vertices are evenly divided into different machines, but heavy vertices will deploy delegates at many nodes causing unbalanced load
Solution Approach 1:
The patent applies local quality by differentiating the treatment of vertices based on their degree characteristics. Heavy vertices (high degree) are identified and treated differently from ordinary vertices, with delegates strategically deployed only where necessary. This localized approach ensures that not all vertices receive the same treatment, optimizing resource usage while maintaining load balance.
Solution Approach 2:
The patent segments vertices into different categories based on their degree: heavy vertices and ordinary vertices. This segmentation allows the system to apply different partitioning strategies to different segments, with heavy vertices receiving special handling through selective delegate deployment rather than uniform distribution across all nodes.
2Productivity
If two-dimensional partitioning method is used, then edges are evenly distributed to each computing node, but too many vertices deploy delegates on rows and columns causing increased complexity
Solution Approach 1:
The patent applies local quality by differentiating the treatment of vertices based on their degree characteristics. Heavy vertices (high degree) are identified and treated differently from ordinary vertices, with delegates strategically deployed only where necessary. This localized approach ensures that not all vertices receive the same treatment, optimizing resource usage while maintaining load balance.
Solution Approach 2:
The patent segments vertices into different categories based on their degree: heavy vertices and ordinary vertices. This segmentation allows the system to apply different partitioning strategies to different segments, with heavy vertices receiving special handling through selective delegate deployment rather than uniform distribution across all nodes.
3Adaptability or versatility
If traditional partitioning methods are used on heterogeneous many-core systems, then graph data is divided, but unbalanced load causes scalability problems
Solution Approach 1:
The patent applies parameter changes by dynamically adjusting the partitioning strategy based on vertex degree parameters. The system identifies heavy vertices through degree threshold parameters and adapts the delegate deployment strategy accordingly. This parameter-driven approach enables the system to scale effectively on heterogeneous many-core systems by adjusting to the specific characteristics of the graph data being processed.
Data Source
AI summary
Provided are a distributed parallel computing-based graph computing method, a distributed parallel computing system, and a computer readable medium. The graph computing method comprises: obtaining data of a graph to be computed, dividing vertexes into a first extremely high degree class E, a second high degree class H, and a third regular class R, forming a super node by a predetermined number of compute nodes, the communication between nodes in a super node being faster than the communication between nodes across the super node, and dividing the nodes into grids, one node in each grid, the internal nodes in one super node being logically arranged in a row, vertices being evenly divided into the nodes according to numbers, Ri and Ro being maintained by the nodes to which Ri and Ro belong, the state of an Ho vertex being synchronously maintained on a column, the state of an Hi vertex being synchronously maintained on the column and the row, and the states of Eo and Ei vertexes being globally and synchronously maintained. According to the three-level vertex division method, sub-graphs are well balanced between the nodes, thereby facilitating elimination of repeated sending of a message to a same super node, and avoiding a high-cost global delegate.


