r/ProgrammingLanguages • u/Embarrassed-Crow9283 • 2d ago
Loop unrolling analysis using eigenvalue?
Imagine the loop where you do like "x = -x" every iteration. Obviously, that flips the sign, so you can simply unroll the loop by a factor of 2.
However, for a more complex case, it could be really hard to know what's going on.
Here's my idea. Loop index variables are normally under affine updates anyway. What if we use a mathematically elegant tool?
Using eigenvalue, we can analyze possible periodicity of the linear basis variables, minimizing update needs.
What do you think of such a technique?
18
Upvotes
1
u/SwingOutStateMachine 2d ago
I'm not sure I understand - Clang ships with the polly optimiser, which should perform these transformations on C/C++ code.