Journal article
Improving Loop Dependence Analysis
Formal Methods, Department of Applied Mathematics and Computer Science, Technical University of Denmark1
Department of Applied Mathematics and Computer Science, Technical University of Denmark2
Embedded Systems Engineering, Department of Applied Mathematics and Computer Science, Technical University of Denmark3
Programmers can no longer depend on new processors to have significantly improved single-thread performance. Instead, gains have to come from other sources such as the compiler and its optimization passes. Advanced passes make use of information on the dependencies related to loops. We improve the quality of that information by reusing the information given by the programmer for parallelization.
We have implemented a prototype based on GCC into which we also add a new optimization pass. Our approach improves the amount of correctly classified dependencies resulting in 46% average improvement in single-thread performance for kernel benchmarks compared to GCC 6.1.
Language: | English |
---|---|
Publisher: | ACM |
Year: | 2017 |
Pages: | 1-24 |
ISSN: | 15443973 and 15443566 |
Types: | Journal article |
DOI: | 10.1145/3095754 |
ORCIDs: | Jensen, Nicklas Bo and Karlsson, Sven |
Architectures Compilers Computer systems organization Computing methodologies OpenMP Parallel architectures Parallel computing methodologies Parallel programming languages SIMD Single instruction, multiple data Software and its engineering Software notations and tools automatic vectorization