DocumentCode :
625610
Title :
Data-Driven Versus Topology-driven Irregular Computations on GPUs
Author :
Nasre, Rupesh ; Burtscher, Martin ; Pingali, Keshav
Author_Institution :
Univ. of Texas, Austin, TX, USA
fYear :
2013
fDate :
20-24 May 2013
Firstpage :
463
Lastpage :
474
Abstract :
Irregular algorithms are algorithms with complex main data structures such as directed and undirected graphs, trees, etc. A useful abstraction for many irregular algorithms is its operator formulation in which the algorithm is viewed as the iterated application of an operator to certain nodes, called active nodes, in the graph. Each operator application, called an activity, usually touches only a small part of the overall graph, so nonoverlapping activities can be performed in parallel. In topology-driven implementations, all nodes are assumed to be active so the operator is applied everywhere in the graph even if there is no work to do at some nodes. In contrast, in data-driven implementations the operator is applied only to nodes at which there might be work to do. Multicore implementations of irregular algorithms are usually data-driven because current multicores only support small numbers of threads and work-efficiency is important. Conversely, many irregular GPU implementations use a topology-driven approach because work inefficiency can be counterbalanced by the large number of GPU threads. In this paper, we study data-driven and topology-driven implementations of six important graph algorithms on GPUs. Our goal is to understand the tradeoffs between these implementations and how to optimize them. We find that data-driven versions are generally faster and scale better despite the cost of maintaining a worklist. However, topology-driven versions can be superior when certain algorithmic properties are exploited to optimize the implementation. These results led us to devise hybrid approaches that combine the two techniques and outperform both of them.
Keywords :
data structures; graphics processing units; parallel processing; topology; GPU threads; complex main data structures; data-driven irregular computation; directed graph; iterated application; multicore implementations; topology-driven irregular computation; undirected graph; Algorithm design and analysis; Graphics processing units; Indexes; Instruction sets; Kernel; Optimization; Synchronization; GPGPU; algorithmic properties; data-driven; irregular algorithms; topology-driven;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel & Distributed Processing (IPDPS), 2013 IEEE 27th International Symposium on
Conference_Location :
Boston, MA
ISSN :
1530-2075
Print_ISBN :
978-1-4673-6066-1
Type :
conf
DOI :
10.1109/IPDPS.2013.28
Filename :
6569834
Link To Document :
بازگشت