TRACO: An Automatic Loop Nest Parallelizer for Numerical Applications

Marek Pałkowski, Tomasz Klimek, Włodzimierz Bielecki · Annals of Computer Science and Information Systems · 2015

We present the source-to-source TRACO compiler allowing for increasing program locality and parallelizing arbitrarily nested loop sequences in numerical applications.Algorithms for generation of tiled code and extracting synchronization-free slices composed of tiles are presented.Parallelism of arbitrary nested loops is obtained by creating a kernel of computations represented in the OpenMP standard to be executed independently on many CPUs.We consider benchmarks, typical from compute-intensive sequences of algebra operations or numerical computation from industry and engineering.The speed-up of programs generated by TRACO are discussed.Related compilers and techniques are considered.Future work is outlined.

Read the paper · More papers on PaperTik