Title :
Vlock: Lock virtualization mechanism for exploiting fine-grained parallelism in graph traversal algorithms
Author :
Jie Yan ; Guangming Tan ; Xiuxia Zhang ; Erlin Yao ; Ninghui Sun
Author_Institution :
State Key Lab. of Comput. Archit., Inst. of Comput. Technol., Beijing, China
Abstract :
For graph traversal applications, fine synchronization is required to exploit massive fine parallelism. However, in the conventional solution using fine-grained locks, locks themselves suffer huge memory cost as well as poor locality for inherent irregular access to vertices. In this paper, we propose a novel fine lock solution-vLock. The key idea is lock virtualization that maps the huge logical lock space to a much smaller physical lock space that can reside in cache during the program life cycle. Lock virtualization effectively reduces lock incurred overheads of both memory cost and cache misses. It also achieves high usability in legacy graph programs, as from users´s view vLock is the same as lock methods in Pthreads. We implement vLock as a Pthreads-like library and evaluate its performance in four classical graph algorithms (BFS, SSSP, CC, PageRank). Experiments on a SMP system with two Intel Westemere six-core processors show that, compared to conventional fine locks, vLock significantly reduces locks´ cache misses and has competitive performance. Particularly, PageRank with vLock has about 20% performance improvement.
Keywords :
cache storage; graph theory; multiprocessing systems; parallel processing; virtualisation; BFS; CC; Intel Westemere six-core processors; PageRank; Pthreads-like library; SMP system; SSSP; cache miss; fine synchronization; fine-grained locks; fine-grained parallelism; graph traversal algorithms; legacy graph programs; lock virtualization mechanism; logical lock space; memory cost; physical lock space; program life cycle; vLock; Algorithm design and analysis; Instruction sets; Parallel processing; Programming; Synchronization; Usability; Virtualization; Fine Synchronization; Graph Algorithms; vLock;
Conference_Titel :
Code Generation and Optimization (CGO), 2013 IEEE/ACM International Symposium on
Conference_Location :
Shenzhen
Print_ISBN :
978-1-4673-5524-7
DOI :
10.1109/CGO.2013.6494991