Obtaining Affine Transformations to Improve Locality of Loop Nests

A new method for obtaining affine transformations of loops for the localization (fast reuse) of program data is proposed. A technique of multidimensional scheduling is used with the following strategy of locality improvement: derive affine transformations allowing one to quickly reuse as much data as possible; if the amount of localized data is insufficient, apply a blocking. The method can easily be automated; the dependence on external parameters of the loops is explicitly taken into account.