SOTAVerified

Design and Use of Loop-Transformation Pragmas

2019-10-06Code Available0· sign in to hype

Michael Kruse, Hal Finkel

Code Available — Be the first to reproduce this paper.

Reproduce

Code

Abstract

Adding a pragma directive into the source code is arguably easier than rewriting it, for instance for loop unrolling. Moreover, if the application is maintained for multiple platforms, their difference in performance characteristics may require different code transformations. Code transformation directives allow replacing the directives depending on the platform, i.e. separation of code semantics and its performance optimization. In this paper, we explore the design space (syntax and semantics) of adding such directive into a future OpenMP specification. Using a prototype implementation in Clang, we demonstrate the usefulness of such directives on a few benchmarks.

Tasks

Reproductions