IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU

The Louvain algorithm is a method to detect communities present in a graph. Among parallel implementations of the algorithm, GPU implementations show a significant increase in performance but are still bound by the throughput and memory limit of one GPU. Along with the increase in the size of gra...

Full description

Saved in:
Bibliographic Details
Main Author: Bezalel Iman Gustaman, Steve
Format: Final Project
Language:Indonesia
Online Access:https://digilib.itb.ac.id/gdl/view/65816
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Institut Teknologi Bandung
Language: Indonesia
id id-itb.:65816
spelling id-itb.:658162022-06-25T03:32:02ZIMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU Bezalel Iman Gustaman, Steve Indonesia Final Project Louvain, graph, multi-GPU, NVIDIA CUDA, NCCL INSTITUT TEKNOLOGI BANDUNG https://digilib.itb.ac.id/gdl/view/65816 The Louvain algorithm is a method to detect communities present in a graph. Among parallel implementations of the algorithm, GPU implementations show a significant increase in performance but are still bound by the throughput and memory limit of one GPU. Along with the increase in the size of graphs present in the real world, a method is needed to process the Louvain algorithm for larger graphs without decreasing the performance. This can be achieved by utilizing multiGPU. This final project aims to implement the parallel Louvain algorithm in a multi-GPU environment. The multi-GPU implementation is adapted from a single-GPU implementation from previous research by Naim in 2017. In the multi-GPU implementation designed, each GPU is responsible to process one partition of the input graph. There are also data synchronizations among the partitions using inter-GPU communications. This implementation utilizes NVIDIA CUDA for GPU programming and NCCL library for inter-GPU communication APIs. Compared with the single-GPU implementation, the multi-GPU implementation designed needs additional memory. The percentage of additional overhead memory needed is lower in graphs with a higher edge-to-node ratio. Other than that, with the usage of 8 GPUs, the multi-GPU algorithm designed gives off up to 1.2x speedup in processing graphs with low-degree largest-degree-node, and up to 3.4x speedup in processing graphs with varying node degrees and a high-degree largestdegree-node. text
institution Institut Teknologi Bandung
building Institut Teknologi Bandung Library
continent Asia
country Indonesia
Indonesia
content_provider Institut Teknologi Bandung
collection Digital ITB
language Indonesia
description The Louvain algorithm is a method to detect communities present in a graph. Among parallel implementations of the algorithm, GPU implementations show a significant increase in performance but are still bound by the throughput and memory limit of one GPU. Along with the increase in the size of graphs present in the real world, a method is needed to process the Louvain algorithm for larger graphs without decreasing the performance. This can be achieved by utilizing multiGPU. This final project aims to implement the parallel Louvain algorithm in a multi-GPU environment. The multi-GPU implementation is adapted from a single-GPU implementation from previous research by Naim in 2017. In the multi-GPU implementation designed, each GPU is responsible to process one partition of the input graph. There are also data synchronizations among the partitions using inter-GPU communications. This implementation utilizes NVIDIA CUDA for GPU programming and NCCL library for inter-GPU communication APIs. Compared with the single-GPU implementation, the multi-GPU implementation designed needs additional memory. The percentage of additional overhead memory needed is lower in graphs with a higher edge-to-node ratio. Other than that, with the usage of 8 GPUs, the multi-GPU algorithm designed gives off up to 1.2x speedup in processing graphs with low-degree largest-degree-node, and up to 3.4x speedup in processing graphs with varying node degrees and a high-degree largestdegree-node.
format Final Project
author Bezalel Iman Gustaman, Steve
spellingShingle Bezalel Iman Gustaman, Steve
IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
author_facet Bezalel Iman Gustaman, Steve
author_sort Bezalel Iman Gustaman, Steve
title IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
title_short IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
title_full IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
title_fullStr IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
title_full_unstemmed IMPLEMENTATION OF PARALLEL LOUVAIN ALGORITHM USING MULTI-GPU
title_sort implementation of parallel louvain algorithm using multi-gpu
url https://digilib.itb.ac.id/gdl/view/65816
_version_ 1822004970346512384