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.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call