initial ordering of the transforms
[pipstransfo.git] / pipstransfo.tex
index 4cef713..7409fd1 100644 (file)
 
 \section{Memory allocation alteration}
 
+\begin{description}
+
+\item[scalar renaming]{is the process of renaming scalar variables to
+    suppress false data dependencies.}
+
+\item[privatization]{is the process of detecting variables that are
+    private to a loop body, i.e.\ written first, then read.}
+
+\end{description}
+
+
 \section{Loop transformations}
 
+\begin{description}
+
+\item[loop unrolling]{
+  is a loop transformation. 
+  Unrolling a loop by a factor of $n$ consists in the substitution of a loop
+  body by itself, replicated $n$ times. A prelude and/or postlude are
+  added to preserve the number of iteration.}
+
+\item[loop fusion]{
+  is a loop transformation that replaces two loops by a single loops whose
+  body is the concatenation of the bodies of the two initial loops.}
+
+\item[loop tiling]{
+  is a loop nest transformation that changes the loop execution order
+  through a partitions of the iteration space into
+  chunks, so that the iteration is performed over each chunk and in the
+  chunks.}
+
+\item[loop interchange]{is a loop transformation that permutes two
+  loops from a loop nest.}
+
+\item[loop unswitching]{is a loop transformation that replaces a
+  loop containing a test independent from the loop execution by a test
+  containing the loop without the test in both true and false branch.}
+
+\item[loop normalization]{is a loop transformation that changes
+  the loop initial increment value or the loop range to enforce certain values, 
+  generally 1.}
+
+\end{description}
+
 \section{Inter-procedural transformations}
 
 \section{Base blocs transformations}
 
 
 \begin{description}
-\item[loop unrolling]{
-  is a loop transformation. Unrolling a loop by a factor of $n$ consists in the substitution of a loop
-  body by itself, replicated $n$ times. A prelude and/or postlude are
-  added to preserve the number of iteration.}
+
 
 \item[inlining]{
   is a function transformation. Inlining a function
   is the process of replacing a reference read in an
   expression by the latest expression affected to it.}
 
-\item[loop fusion]{
-  is a loop transformation that replaces two loops by a single loops whose
-  body is the concatenation of the bodies of the two initial loops.}
 
-\item[loop tiling]{
-  is a loop nest transformation that changes the loop execution order
-  through a partitions of the iteration space into
-  chunks, so that the iteration is performed over each chunk and in the
-  chunks.}
+
+
 
 \item[reduction detection]{
   is an analysis that identifies statements that perform a reduction over a
   is the process of replacing similar expressions by a variable that holds
   the result of their evaluation.}
 
-\item[loop interchange]{is a loop transformation that permutes two
-  loops from a loop nest.}
 
-\item[loop unswitching]{is a loop transformation that replaces a
-  loop containing a test independent from the loop execution by a test
-  containing the loop without the test in both true and false branch.}
 
 \item[statement isolation]{is the process of replacing all
   variables referenced in a statement by newly declared variables. A
   multidimensional array into unidimensional arrays, possibly with a
   conversion from array to pointer.}
 
-\item[privatization]{is the process of  detecting variables that
-  are private to a loop body, i.e.\ written first, then read.}
 
-\item[loop normalization]{is a loop transformation that changes
-  the loop initial increment value or the loop range to enforce certain values, generally
-  1.}
+
+
 
 \item[iteration clamping]{is a loop transformation that extends
   the loop range but guards the loop body with the former range.}
   them by their non-unrolled version.}
 \end{description}
 
-\end{document}
+
+\section{References}
+
+
+\end{document}
\ No newline at end of file