Optimizing task parallelism with library-semantics-aware compilation

5Citations
Citations of this article
6Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

With the spread of parallel architectures throughout all areas of computing, task-based parallelism is an increasingly commonly employed programming paradigm, due to its ease of use and potential scalability. Since C++11, the ISO C++ language standard library includes support for task parallelism. However, existing research and implementation work in task parallelism relies almost exclusively on runtime systems for achieving performance and scalability. We propose a combined compiler and runtime system approach that is aware of the parallel semantics of the C++11 standard library functions, and therefore capable of statically analyzing and optimizing their implementation, as well as automatically providing scheduling hints to the runtime system. We have implemented this approach in an existing compiler and demonstrate its effectiveness by carrying out an empirical study across 9 task-parallel benchmarks. On a 32-core system, our method is, on average, 11.7 times faster than the best result for Clang and GCC C++11 library implementations, and 4.1 times faster than an OpenMP baseline.

References Powered by Scopus

859Citations
307Readers
Get full text
214Citations
105Readers
Get full text
176Citations
51Readers
Get full text

Cited by Powered by Scopus

Exploring the semantic gap in compiling embedded DSLs

5Citations
7Readers
Get full text

A context-aware primitive for nested recursive parallelism

5Citations
2Readers

This article is free to access.

4Citations
5Readers
Get full text

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Cite

CITATION STYLE

APA

Thoman, P., Moosbrugger, S., & Fahringer, T. (2015). Optimizing task parallelism with library-semantics-aware compilation. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9233, pp. 237–249). Springer Verlag. https://doi.org/10.1007/978-3-662-48096-0_19

Readers over time

‘15‘16‘17‘22‘2400.511.52

Readers' Seniority

Tooltip

PhD / Post grad / Masters / Doc 4

100%

Readers' Discipline

Tooltip

Computer Science 3

60%

Business, Management and Accounting 1

20%

Engineering 1

20%

Save time finding and organizing research with Mendeley

Sign up for free
0