Title :
Improving the Task Stealing in Intel Threading Building Blocks
Author :
Lu, Shiyi ; Li, Qing
Author_Institution :
Dept. of Comput. Sci., ShangHai Univ., Shanghai, China
Abstract :
The Intel Threading Building Blocks (TBB)is a run-time library[1] for parallel programming based on C++. The TBB programming environment facilitates programmers to express concurrency in terms of parallel tasks rather than parallel threads. TBB provide programmers with parallel algorithms and concurrent containers, thus programmers can parallel a program without considering how to map the tasks on to the physical threads. In fact, all the paralleling task work is based on the task scheduler. When stealing a task, the task scheduler select the victim thread randomly. In this paper, we first study and characterize the TBB´s random stealing. Then we provide two method to predicate the threads´ criticality, using the methods to improve the performance of TBB´s task stealing. We did some experiments to validate the achievement in improving the performance of TBB´s task stealing.
Keywords :
C++ language; parallel algorithms; parallel programming; C++; Intel threading building blocks; TBB programming environment; parallel algorithms; parallel programming; paralleling task work; run-time library; task scheduler; task stealing; Benchmark testing; Computer architecture; Concurrent computing; Dynamic scheduling; Instruction sets; Parallel processing;
Conference_Titel :
Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC), 2011 International Conference on
Conference_Location :
Beijing
Print_ISBN :
978-1-4577-1827-4
DOI :
10.1109/CyberC.2011.61