Title :
Performance Evaluation of Concurrent Lock-free Data Structures on GPUs
Author :
Misra, Prasant ; Chaudhuri, Mainak
Author_Institution :
Dept. of Comput. Sci. & Eng., Indian Inst. of Technol., Kanpur, Kanpur, India
Abstract :
Graphics processing units (GPUs) have emerged as a strong candidate for high-performance computing. While regular data-parallel computations with little or no synchronization are easy to map on the GPU architectures, it is a challenge to scale up computations on dynamically changing pointer-linked data structures. The traditional lock-based implementations are known to offer poor scalability due to high lock contention in the presence of thousands of active threads, which is common in GPU architectures. In this paper, we present a performance evaluation of concurrent lock-free implementations of four popular data structures on GPUs. We implement a set using lock-free linked list, hash table, skip list, and priority queue. On the first three data structures, we evaluate the performance of different mixes of addition, deletion, and search operations. The priority queue is designed to support retrieval and deletion of the minimum element and addition operations to the set. We evaluate the performance of these lock-free data structures on a Tesla C2070 Fermi GPU and compare it with the performance of multi-threaded lock-free implementations for CPU running on a 24-core Intel Xeon server. The linked list, hash table, skip list, and priority queue implementations achieve speedup of up to 7.4, 11.3, 30.7, and 30.8, respectively on the GPU compared to the Xeon server.
Keywords :
data structures; graphics processing units; multi-threading; GPU; Intel Xeon server; Tesla C2070 Fermi GPU; addition operations; concurrent lock-free data structures; data-parallel computations; deletion operations; graphics processing units; hash table; high-performance computing; lock-based implementations; lock-free linked list; multithreaded lock-free implementations; performance evaluation; pointer-linked data structures; priority queue; search operations; skip list; Arrays; Graphics processing units; Instruction sets; Kernel; Synchronization; CUDA; GPU; concurrent; hash table; linked list; lock-free; priority queue; skip list;
Conference_Titel :
Parallel and Distributed Systems (ICPADS), 2012 IEEE 18th International Conference on
Conference_Location :
Singapore
Print_ISBN :
978-1-4673-4565-1
Electronic_ISBN :
1521-9097
DOI :
10.1109/ICPADS.2012.18