Cluster identification algorithms for spin models—sequential and parallel
Concurrency: Practice and Experience
New methods to color the vertices of a graph
Communications of the ACM
Introduction to Algorithms
Optimizing two-pass connected-component labeling algorithms
Pattern Analysis & Applications
Exploiting graphical processing units for data-parallel scientific applications
Concurrency and Computation: Practice & Experience
Accelerating large graph algorithms on the GPU using CUDA
HiPC'07 Proceedings of the 14th international conference on High performance computing
A scalable parallel graph coloring algorithm for distributed memory computers
Euro-Par'05 Proceedings of the 11th international Euro-Par conference on Parallel Processing
Research note: Connected component labeling on a 2D grid using CUDA
Journal of Parallel and Distributed Computing
Advances on watershed processing on GPU architecture
ISMM'11 Proceedings of the 10th international conference on Mathematical morphology and its applications to image and signal processing
Efficient breadth first search on multi-GPU systems
Journal of Parallel and Distributed Computing
A comparative study of parallel algorithms for the girth problem
AusPDC '12 Proceedings of the Tenth Australasian Symposium on Parallel and Distributed Computing - Volume 127
Computers and Electrical Engineering
Interactive extraction and tracking of biomolecular surface features
EuroVis '13 Proceedings of the 15th Eurographics Conference on Visualization
EuroVis '13 Proceedings of the 15th Eurographics Conference on Visualization
Hi-index | 0.00 |
Graph component labelling, which is a subset of the general graph colouring problem, is a computationally expensive operation that is of importance in many applications and simulations. A number of data-parallel algorithmic variations to the component labelling problem are possible and we explore their use with general purpose graphical processing units (GPGPUs) and with the CUDA GPU programming language. We discuss implementation issues and performance results on GPUs using CUDA. We present results for regular mesh graphs as well as arbitrary structured and topical graphs such as small-world and scale-free structures. We show how different algorithmic variations can be used to best effect depending upon the cluster structure of the graph being labelled and consider how features of the GPU architectures and host CPUs can be combined to best effect into a cluster component labelling algorithm for use in high performance simulations.