TY - GEN
T1 - Task-parallel versus data-parallel library-based programming in multicore systems
AU - Andrade, Diego
AU - Fraguela, Basilio B.
AU - Brodman, James
AU - Padua, David
PY - 2009
Y1 - 2009
N2 - Multicore machines are becoming common. There are many languages, language extensions and libraries devoted to improve the programmability and performance of these machines. In this paper we compare two libraries, that face the problem of programming multicores from two different perspectives, task parallelism and data parallelism. The Intel Threading Building Blocks (TBB) library separates logical task patterns, which are easy to understand, from physical threads, and delegates the scheduling of the tasks to the system. On the other hand, Hierarchically Tiled Arrays (HTAs) are data structures that facilitate locality and parallelism of array intensive computations with a block-recursive nature following a data-parallel paradigm. Our comparison considers both ease of programming and the performance obtained using both approaches. In our experience, HTA programs tend to be smaller or as long as TBB programs, while performance of both approaches is very similar.
AB - Multicore machines are becoming common. There are many languages, language extensions and libraries devoted to improve the programmability and performance of these machines. In this paper we compare two libraries, that face the problem of programming multicores from two different perspectives, task parallelism and data parallelism. The Intel Threading Building Blocks (TBB) library separates logical task patterns, which are easy to understand, from physical threads, and delegates the scheduling of the tasks to the system. On the other hand, Hierarchically Tiled Arrays (HTAs) are data structures that facilitate locality and parallelism of array intensive computations with a block-recursive nature following a data-parallel paradigm. Our comparison considers both ease of programming and the performance obtained using both approaches. In our experience, HTA programs tend to be smaller or as long as TBB programs, while performance of both approaches is very similar.
UR - http://www.scopus.com/inward/record.url?scp=70349139288&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=70349139288&partnerID=8YFLogxK
U2 - 10.1109/PDP.2009.54
DO - 10.1109/PDP.2009.54
M3 - Conference contribution
AN - SCOPUS:70349139288
SN - 9780769535449
T3 - Proceedings of the 17th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2009
SP - 101
EP - 110
BT - Proceedings of the 17th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2009
T2 - 17th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP 2009
Y2 - 18 February 2009 through 20 February 2009
ER -