Loop Optimization Framework

11/01/2018
by   Michael Kruse, et al.
0

The LLVM compiler framework supports a selection of loop transformations such as vectorization, distribution and unrolling. Each transformation is carried-out by specialized passes that have been developed independently. In this paper we propose an integrated approach to loop optimizations: A single dedicated pass that mutates a Loop Structure DAG. Each transformation can make use of a common infrastructure such as dependency analysis, transformation preconditions, etc.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/09/2018

A Proposal for Loop-Transformation Pragmas

Pragmas for loop transformations, such as unrolling, are implemented in ...
research
05/18/2022

A Novel Loop Fission Technique Inspired by Implicit Computational Complexity

This work explores an unexpected application of Implicit Computational C...
research
01/21/2019

Technical Report: Using Loop Scopes with for-Loops

Loop scopes have been shown to be a helpful tool in creating sound loop ...
research
11/01/2018

User-Directed Loop-Transformations in Clang

Directives for the compiler such as pragmas can help programmers to sepa...
research
03/28/2018

An Approach for Finding Permutations Quickly: Fusion and Dimension matching

Polyhedral compilers can perform complex loop optimizations that improve...
research
02/03/2020

Treating for-Loops as First-Class Citizens in Proofs

Indexed loop scopes have been shown to be a helpful tool in creating sou...
research
05/04/2021

Simple, Light, Yet Formally Verified, Global Common Subexpression Elimination and Loop-Invariant Code Motion

We present an approach for implementing a formally certified loop-invari...

Please sign up or login with your details

Forgot password? Click here to reset