From: Pierre Guillou Date: Tue, 11 Feb 2014 12:36:52 +0000 (+0100) Subject: unwanted merge with Vivien X-Git-Url: https://scm.cri.mines-paristech.fr/git/pipstransfo.git/commitdiff_plain/0106ef99df45720946ada6d92f8d543b94a0e0c0?hp=-c unwanted merge with Vivien --- 0106ef99df45720946ada6d92f8d543b94a0e0c0 diff --combined pipstransfo.tex index 7409fd1,4706900..06f9f63 --- a/pipstransfo.tex +++ b/pipstransfo.tex @@@ -3,12 -3,13 +3,13 @@@ \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage[english]{babel} + \usepackage{lmodern} \usepackage{listings} \usepackage{hyperref} - \title{PIPS - List of code transformations} + \title{PIPS~--- List of code transformations} @@@ -19,50 -20,8 +20,50 @@@ \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.} ++ generally~1.} + +\end{description} + \section{Inter-procedural transformations} \section{Base blocs transformations} @@@ -73,7 -32,10 +74,7 @@@ \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 @@@ -87,9 -49,15 +88,9 @@@ 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 @@@ -123,7 -91,12 +124,7 @@@ 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 @@@ -139,9 -112,11 +140,8 @@@ 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.} @@@ -175,8 -150,4 +175,8 @@@ them by their non-unrolled version.} \end{description} + +\section{References} + + - \end{document} + \end{document}