Community detection is the problem of identifying natural divi sions in networks. Efficient parallel algorithms for identifying such divisions is critical in a number of applications, where the size of datasets have reached significant scales. This technical report presents an optimized parallel implementation of Louvain, a high quality community detection method, for shared memory multicore systems. On a server equipped with dual 16-core Intel Xeon Gold 6226R processors, our Louvain, which we term as GVE-Louvain, outperforms Vite, Grappolo, and NetworKit Louvain by 50x, 22x, and 20x respectively - achieving a processing rate of 560M edges/s on a 3.8B edge graph. In addition, GVE-Louvain improves perfor mance at an average rate of 1.6x for every doubling of threads
翻译:社区检测是识别网络中自然划分的问题。在数据集规模已达到显著量级的众多应用中,高效并行算法对于识别此类划分至关重要。本技术报告提出了Louvain(一种高质量社区检测方法)在共享内存多核系统上的优化并行实现。在配备双路16核Intel Xeon Gold 6226R处理器的服务器上,我们的Louvain算法(称为GVE-Louvain)分别比Vite、Grappolo和NetworKit Louvain快50倍、22倍和20倍——在38亿条边的图上实现了5.6亿条边/秒的处理速度。此外,GVE-Louvain在每增加一倍线程数时,性能平均提升1.6倍。