This paper presents a source-to-source compiler, TRACO, for automatic extraction of both coarse- and fine-grained parallelism available in C/C++ loops. Parallelization techniques, implemented in TRACO, are based on the transitive closure of a relation describing all the dependences in a loop. Coarse- and fine-grained parallelism is represented with synchronization-free slices (space partitions) and a legal loop statement instance schedule (time partitions), respectively. On its output, TRACO produces compilable parallel OpenMP C/C++ and/or OpenACC C/C++ code. The effectiveness of TRACO and efficiency of parallel code produced by TRACO are evaluated by means of the NAS Parallel Benchmark and Polyhedral Benchmark suites.
CITATION STYLE
Palkowski, M., & Bielecki, W. (2015). TRACO parallelizing compiler. In Advances in Intelligent Systems and Computing (Vol. 342, pp. 409–421). Springer Verlag. https://doi.org/10.1007/978-3-319-15147-2_34
Mendeley helps you to discover research relevant for your work.