Mapping parallel graph algorithms to throughput-oriented architectures

The stagnant performance of single core processors, increasing size of data sets, and variety of structure in information has made the domain of parallel and high-performance computing especially crucial. Graphics Processing Units (GPUs) have recently become an exciting alternative to traditional CP...

Full description

Bibliographic Details
Main Author: McLaughlin, Adam
Other Authors: Bader, David A.
Format: Others
Language:en_US
Published: Georgia Institute of Technology 2016
Subjects:
Online Access:http://hdl.handle.net/1853/54374
id ndltd-GATECH-oai-smartech.gatech.edu-1853-54374
record_format oai_dc
spelling ndltd-GATECH-oai-smartech.gatech.edu-1853-543742016-02-17T03:34:40ZMapping parallel graph algorithms to throughput-oriented architecturesMcLaughlin, AdamParallel algorithmsGPUsGraph algorithmsMemory consistency verificationEnergy-efficiencyHigh performance computingThe stagnant performance of single core processors, increasing size of data sets, and variety of structure in information has made the domain of parallel and high-performance computing especially crucial. Graphics Processing Units (GPUs) have recently become an exciting alternative to traditional CPU architectures for applications in this domain. Although GPUs are designed for rendering graphics, research has found that the GPU architecture is well-suited to algorithms that search and analyze unstructured, graph-based data, offering up to an order of magnitude greater memory bandwidth over their CPU counterparts. This thesis focuses on GPU graph analysis from the perspective that algorithms should be efficient on as many classes of graphs as possible, rather than being specialized to a specific class, such as social networks or road networks. Using betweenness centrality, a popular analytic used to find prominent entities of a network, as a motivating example, we show how parallelism, distributed computing, hybrid and on-line algorithms, and dynamic algorithms can all contribute to substantial improvements in the performance and energy-efficiency of these computations. We further generalize this approach and provide an abstraction that can be applied to a whole class of graph algorithms that require many simultaneous breadth-first searches. Finally, to show that our findings can be applied in real-world scenarios, we apply these techniques to the problem of verifying that a multiprocessor complies with its memory consistency model.Georgia Institute of TechnologyBader, David A.2016-01-07T17:24:46Z2016-01-07T17:24:46Z2015-122015-09-29December 20152016-01-07T17:24:46ZDissertationapplication/pdfhttp://hdl.handle.net/1853/54374en_US
collection NDLTD
language en_US
format Others
sources NDLTD
topic Parallel algorithms
GPUs
Graph algorithms
Memory consistency verification
Energy-efficiency
High performance computing
spellingShingle Parallel algorithms
GPUs
Graph algorithms
Memory consistency verification
Energy-efficiency
High performance computing
McLaughlin, Adam
Mapping parallel graph algorithms to throughput-oriented architectures
description The stagnant performance of single core processors, increasing size of data sets, and variety of structure in information has made the domain of parallel and high-performance computing especially crucial. Graphics Processing Units (GPUs) have recently become an exciting alternative to traditional CPU architectures for applications in this domain. Although GPUs are designed for rendering graphics, research has found that the GPU architecture is well-suited to algorithms that search and analyze unstructured, graph-based data, offering up to an order of magnitude greater memory bandwidth over their CPU counterparts. This thesis focuses on GPU graph analysis from the perspective that algorithms should be efficient on as many classes of graphs as possible, rather than being specialized to a specific class, such as social networks or road networks. Using betweenness centrality, a popular analytic used to find prominent entities of a network, as a motivating example, we show how parallelism, distributed computing, hybrid and on-line algorithms, and dynamic algorithms can all contribute to substantial improvements in the performance and energy-efficiency of these computations. We further generalize this approach and provide an abstraction that can be applied to a whole class of graph algorithms that require many simultaneous breadth-first searches. Finally, to show that our findings can be applied in real-world scenarios, we apply these techniques to the problem of verifying that a multiprocessor complies with its memory consistency model.
author2 Bader, David A.
author_facet Bader, David A.
McLaughlin, Adam
author McLaughlin, Adam
author_sort McLaughlin, Adam
title Mapping parallel graph algorithms to throughput-oriented architectures
title_short Mapping parallel graph algorithms to throughput-oriented architectures
title_full Mapping parallel graph algorithms to throughput-oriented architectures
title_fullStr Mapping parallel graph algorithms to throughput-oriented architectures
title_full_unstemmed Mapping parallel graph algorithms to throughput-oriented architectures
title_sort mapping parallel graph algorithms to throughput-oriented architectures
publisher Georgia Institute of Technology
publishDate 2016
url http://hdl.handle.net/1853/54374
work_keys_str_mv AT mclaughlinadam mappingparallelgraphalgorithmstothroughputorientedarchitectures
_version_ 1718189636546723840