The algorithm implementation is shown in the following figure:
As seen from the figure:
- Module Convert_CSR_CSC: convert compressed sparse row (CSR) format graph to compressed sparse column (CSC) format graph, When the iterNum is small, the module accounts for a large proportion of the total execution time of the LP_Kernel. The execution time of the module is reduced by increasing the cache depth.
- Module getLabel and its previous module: get all labels of all neighbors of vertex u.
- Module HashMaxFreq and labelSelect: find the highest frequency label (Select a label at random if there are multiple highest frequency labels), then output to DDR.