{'fraction_non_alphanumeric': 0.026565464895635674, 'fraction_numerical': 0.0018975332068311196, 'mean_word_length': 5.552795031055901, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Specialization or generalization: A study on breadth-first graph traversal on GPUs

GPUs (Graphics processing units) have been increasingly adopted for large-scale graph processing by exploiting the inherent parallelism. There have been many efforts in designing specialized graph analytics and generalized frameworks. The two classes of graph processing systems share some common design choices, and often make specific trade-offs. However, there is no characterization study that provides an in-depth understanding of both approaches. In this paper, we analyze two GPU-based graph processing systems (Enterprise and Gunrock) from the perspective of breadth-first graph traversal. We conduct both high-level performance comparison and low-level characteristic evaluation such as workload balancing, synchronization, and memory subsystem. We investigate the differences based on 10 real-world and synthetic graphs. Our results reveal some uncommon findings that would be beneficial to the research and development of large-scale graph processing on GPUs.